查看负载测试运行的结果时,可以显示不同的窗格,从而以不同的方式分析数据。您可以查看图形形式的数据,从而了解数据随时间的变化情况,也可以查看详细信息表形式的数据。
切换到表视图,请在中选择 表 负载测试工具栏上的。若要在不同的表之间切换,请使用表网格上方的工具栏上的**“表”**下拉列表。在表视图中,一次最多可以查看四个表。有关更多信息,请参见本主题中的 平铺负载测试表 。
在整个负载测试运行期间,表中显示的大多数性能计数器数值都是累积的。名为**“最后一个”**的列是个例外,它们表示最近的采样间隔内的值。
![]() |
---|
名为“最后一个”的列仅在负载测试执行期间可用。负载测试完成后,这些列即变为不可用。 |
通过选择要作为排序依据的列的标题排序大多数表。默认情况下,有些表并不显示所有可用的列。如果有列可用,可向表中添加列。若要添加列,请右击该表然后选择 添加/删除列。
![]() |
---|
可以将数据从表复制到 Excel 等其他应用程序中,供其他分析之用。 要求
|
负载测试表
下表列出了可用于分析负载测试运行的表。
表名称 |
说明 |
---|---|
错误 |
显示在负载测试运行期间发生的错误的列表。有关更多信息,请参见本主题中的 错误表 和 使用负载测试分析器分析负载测试结果。 |
页 |
显示在负载测试运行期间访问的页的列表。此表中的某些数据仅在负载测试完成后才可用。有关更多信息,请参见如何:使用负载测试分析器在负载测试中查看网页响应时间。 |
请求 |
显示负载测试期间发出的各个请求的详细信息。其中包括所有 HTTP 请求以及相关请求(如图像)。有关更多信息,请参见本主题中的 请求表 。 |
SQL 跟踪 |
显示 SQL 跟踪的结果。此表仅在负载测试完成后、并且在测试期间使用了 SQL 跟踪的情况下才可用。有关更多信息,请参见本主题中的 SQL跟踪数据表 。 |
测试 |
显示负载测试期间各个测试运行的详细信息。有关更多信息,请参见本主题中的 测试表 。 |
阈值 |
显示在负载测试运行期间发生的阈值规则冲突的列表。有关更多信息,请参见使用负载测试分析器分析负载测试中的阈值规则冲突。 |
事务 |
显示负载测试运行期间发生的事务的列表。有关更多信息,请参见本主题中的 事务表 。 |
代理 |
仅当负载测试使用测试控制器和测试代理时显示。显示在负载测试运行期间使用的代理的列表。“代理”表包含代理所测试的请求数以及这些请求中的失败请求数。此外,“代理”表还包含代理所测试的负载测试测试组合中的测试数以及这些测试中的失败测试数。 |
测试详细信息 |
显示负载测试的测试组合中所包含的测试的详细信息。这些详细信息包括测试名称、测试所在的方案、测试开始时间、运行测试所用的时间长短以及指示测试是否通过的测试结果。如果测试未通过,则“详细信息”列中出现一个链接。可以选择将转到Web性能测试与该失败的请求编辑器中显示的链接。 |
收集百分点数据
有些负载测试表可能包含一些附加列,其中包含基于网络模拟分成若干个组的百分点数据和响应时间。默认情况下,不收集这些数据。若要收集这些数据,请在**“负载测试编辑器”中的“运行设置”节点下,选择要更改的特定运行设置节点。在“属性”窗口中,对于“计时详细信息存储”属性,选择“StatisticsOnly”或“AllIndividualDetails”**。有关更多信息,请参见如何:使用负载测试分析器在负载测试中查看网页响应时间。
请求表
**“请求”**表显示负载测试期间发出的各个请求的详细信息。其中包括所有 HTTP 请求以及相关请求(如图像)。“请求”表按测试和方案列出请求,因为一个请求可以包含在许多测试和方案中。
下表列出了**“请求”**表中的列:
列 |
说明 |
默认情况下可见 |
---|---|---|
请求 |
请求的 URL。例如,home.html 或 orange-arrow.gif。 |
是 |
方案 |
方案的名称。 |
是 |
Test |
测试的名称。 |
是 |
总数 |
负载测试运行期间发出的此 Web 性能测试请求的总数。其中包括通过的请求和失败的请求,但不包括缓存的请求,因为它们不发送到 Web 服务器。 |
是 |
通过 |
请求发出并通过的次数。 |
否 |
未通过 |
请求发出但失败的次数。此列中的项显示为超链接。可以选择任意超链接可以查看各个错误的列表。负载测试错误 对话框中。有关更多信息,请参见使用负载测试分析器分析负载测试结果。 |
是 |
Cached(缓存的请求) |
请求已缓存的总次数。 |
否 |
Requests/Sec(每秒请求数) |
负载测试运行期间每秒的请求数。 |
否 |
Passed/Sec(通过的请求/秒) |
负载测试运行期间此请求的实例每秒通过的数目。 |
否 |
Failed/Sec(失败的请求/秒) |
负载测试运行期间此请求的实例每秒失败的数目。 |
否 |
First Byte Time(第一字节时间) |
接收响应的第一个字节所用的平均时间,是从请求发送到 Web 服务器之时开始计算的。单位为秒。 |
否 |
Response Time(响应时间) |
接收请求的整个响应所用的平均时间,是从请求发送到 Web 服务器之时开始计算的。单位为秒。 |
是 |
Content Length(内容长度) |
请求的响应内容的平均长度。单位为字节。 |
是 |
测试表
**“测试”**表显示负载测试期间各个测试运行的详细信息。该表按测试和方案列出测试,因为一个测试可以包含在许多方案中。
下表列出了**“测试”**表中的列。
列 |
说明 |
默认情况下可见 |
---|---|---|
Test |
测试的名称。 |
是 |
方案 |
方案的名称。 |
是 |
总数 |
该测试在方案中运行的总次数。其中包括测试通过和失败的次数。 |
是 |
通过 |
该测试在方案中运行并通过的次数。 |
是 |
未通过 |
该测试在方案中运行但失败的次数。此列中的项显示为超链接。可以选择任意超链接可以查看各个错误的列表。负载测试错误 对话框中。有关更多信息,请参见使用负载测试分析器分析负载测试结果。 |
是 |
Tests/Sec(测试/秒) |
负载测试运行期间每秒的测试数。 |
是 |
Passed/Sec(通过的请求/秒) |
负载测试运行期间此测试的实例每秒通过的数目。 |
否 |
Failed/Sec(失败的请求/秒) |
负载测试运行期间此测试的实例每秒失败的数目。 |
否 |
Test Time(测试时间) |
负载测试运行期间执行测试所用的平均时间。单位为秒。 |
是 |
90% Test Time(90% 测试时间) |
测试时间值的 90%。 |
否 |
95% Test Time(95% 测试时间) |
测试时间值的 95%。 |
是 |
Requests/Test(请求/测试) |
Web 性能测试中的平均请求数。 |
否 |
事务表
**“事务”**表显示负载测试运行期间发生的事务的列表。这里的事务是指在 Web 性能测试中定义的事务,或者是指在单元测试中定义的计时器,而不是指数据库事务。
下表列出了**“事务”**表中的列。
![]() |
---|
若要查看所有列,必须启用与活动的运行设置关联的“计时详细信息存储”属性。有关更多信息,请参见如何:为负载测试运行设置指定计时详细信息存储属性。 |
列 |
说明 |
可见,但没有计时详细信息 |
---|---|---|
事务 |
事务的名称。 |
是 |
方案 |
方案的名称。 |
是 |
Test |
测试的名称。 |
是 |
总数 |
负载测试运行期间发出的事务的总数。 |
是 |
Transaction Time(事务时间) |
负载测试运行期间执行事务所用的时间。对于 Web 性能测试,思考时间也包括在内。单位为秒。 |
否 |
Response Time(响应时间) |
负载测试运行中 Web 性能测试事务的响应时间。响应时间与事务时间的不同之处在于,响应时间不包括事务期间发生的任何思考时间。单位为秒。 |
否 |
平均 Transaction Time(事务时间) |
平均事务时间。此时间包括思考时间。例如,如果您有三个请求并且每个请求都有一个思考时间,此时间将包括这些思考时间和执行请求的实际时间。 |
否 |
平均 Response Time(响应时间) |
负载测试运行中 Web 性能测试事务的平均响应时间。响应时间与事务时间的不同之处在于,响应时间不包括事务期间发生的任何思考时间。单位为秒。 |
否 |
最小响应时间 |
不包括思考时间。 |
否 |
最大响应时间 |
不包括思考时间。 |
否 |
中间响应时间 |
不包括思考时间。 |
否 |
90% 响应时间 |
事务时间值的 90%。不包括思考时间。 ![]()
这是使用Visual Studio Team System 2008其他测试负载代理,使用 90% 事务时间 值。
|
否 |
95% 响应时间 |
事务时间值的 95%。不包括思考时间。 ![]()
这是使用Visual Studio Team System 2008其他测试负载代理,使用 95% 事务时间 值。
|
否 |
99% 响应时间 |
事务时间值的 99%。不包括思考时间。 |
否 |
标准偏差响应时间 |
不包括思考时间。 |
否 |
错误表
运行负载测试时,可以分析发生的错误。分析错误和调整测试是负载测试过程的重要部分。如果发生任何错误,将在负载测试状态栏上显示**“错误”**超链接,并指出发生的错误数。若要显示错误表,请选择超链接。
错误表按错误的类型和子类型对负载测试过程中发生的错误进行分组。该表中还有一个**“总数”**行,用来指出发生的所有错误的总数。
错误表中包含以下列:
列 |
说明 |
默认情况下可见 |
---|---|---|
类型 |
错误类型。例如,HttpError。 |
是 |
子类型 |
错误的子类型。例如,LoadTestException。 |
是 |
计数 |
负载测试过程中发生的此类型的错误数。此列中的项显示为超链接。可以选择任意超链接可以查看各个错误的列表。 |
是 |
最后一条消息 |
描述错误的消息。例如,404 - NotFound。 |
是 |
有关更多信息,请参见在负载测试分析器的表视图中分析负载测试结果和错误。
进一步查看错误列表
错误表按错误的类型和子类型对错误进行分组。要查看包含各个错误的表,可以显示**“负载测试错误”**对话框。若要显示此对话框,请选择在错误表的 计数 列的超链接。在填充的错误表中可以通过右击行并选择 错误还显示对话框。
![]() |
---|
系统仅收集任何错误类型和子类型组合的前 1,000 个实例。显示“负载测试错误”对话框时,您最多可以看到该错误的前 1,000 个实例。 |
**“负载测试错误”**表包含以下列:
列 |
说明 |
---|---|
时间 |
负载测试过程中发生错误的时间。 |
代理 |
发生错误的代理计算机的名称。使用测试控制器和测试代理运行负载测试时此设置很重要。有关更多信息,请参见使用测试控制器和测试代理在多台测试计算机之间分发负载测试运行。 |
Test |
发生错误的 Web 性能测试的名称。 |
方案 |
发生错误的方案的名称。 |
请求 |
发生错误的请求的 URL。 |
类型 |
错误类型。例如,HttpError。 |
子类型 |
错误的子类型。例如,LoadTestException。 |
Text |
错误消息的文本。例如,404 - NotFound。 |
堆栈 |
此列中的项为空,或者“堆栈”一词显示为超链接格式。可以选择超链接查看错误的堆栈跟踪。 |
详细信息 |
此列中的项为空,或者“测试日志”一词显示为超链接格式。此链接可以帮助您隔离负载测试中的错误。例如,选择Web的 *** TestLog *** 链接性能测试请求错误将打开Web性能测试的结果在Web性能测试结果查看器并突出显示该请求错误。 |
![]() |
---|
通过选择列标头对表进行排序。 |
SQL跟踪数据表
可以在负载测试运行过程中收集 SQL 跟踪数据,以供日后分析。通过收集跟踪数据,可以识别出在所测试的 SQL Server 数据库中运行速度最慢的查询和存储过程。有关更多信息,请参见收集 SQL 跟踪数据,以监视和提高负载测试中的性能。
在创建负载测试之后,可以通过在负载测试编辑器中编辑负载测试来启用跟踪功能。有关更多信息,请参见 如何:集成SQL跟踪数据。
如果启用了 SQL 跟踪,在负载测试运行期间便会创建一个包含跟踪数据的文件。在测试运行结束时,该数据会自动保存到负载测试结果存储区中,跟踪文件会被删除。在完成负载测试之后,可以在**“SQL 跟踪”**表中分析跟踪数据。
查看 SQL 跟踪数据
在负载测试分析器,在工具栏上选择 表 ,以确保表网格中。
从**“表”下拉列表框中选择“SQL 跟踪”**。
在测试运行过程中收集到的跟踪数据将显示在网格中。表中将列出运行速度最慢的几个 SQL 操作,并按照持续时间来排序,最慢的放在最上面。通常,**“持续时间”**列是第一个要检查的列。该数据以毫秒显示。
将显示如下所示的列:
事件类
持续时间
CPU
读取
写入
文本数据
开始时间
结束时间
如果要跟踪 SQL 事件而不是跟踪在这些列中标识出的数据,则可以使用不同于 Visual Studio 旗舰版的 SQL Profiler 来设置自己的自定义 SQL 跟踪。有关更多信息,请参见 Introducing SQL Server Profiler(SQL Server Profiler 简介)。
平铺负载测试表
查看负载测试运行的结果时,可以以详细表的形式查看数据。切换到表视图,请在中选择 表 负载测试工具栏上的。可用的表有“错误”、“页面”、“请求”、“SQL 跟踪”、“测试”、“阈值”和“事务”。有关更多信息,请参见在负载测试分析器的表视图中分析负载测试结果和错误。
在表视图中,一次最多可查看四个表,而不会重叠。
对表进行平铺
在负载测试分析器工具栏上,选择 表。
此时将打开表视图。默认的布局为两个水平的面板。
在负载测试分析器工具栏上,选择布局按钮然后选择以下选项之一:
一个面板
两个水平的面板
三个水平的面板
四个水平的面板
若要在不同的表之间切换,请使用各个面板中表网格上方的下拉列表。
说明
不能在多个面板中显示同一个表。如果将一个面板中显示的表更改为另一个面板中已经显示的表,则这些表将切换面板。