51Testing软件测试论坛

标题: vs2005 负载测试 [打印本页]

作者: 橙子0012    时间: 2018-2-28 14:37
标题: vs2005 负载测试
负载测试;在负载测试过程中进行监视的一组系统性能计数器。计数器集按不同技术划分,计数集
中有不同的计数器,设置每个计数器的阈值(警告值和临界值),如果运行的实际时间超过阈值,
则警告或报错。

如何运行负载测试
1.       选中测试项目,右键 “添加 --〉负载测试” 弹出欢迎页面,点击“下一步”

弹出如下图页面:

输入测试方案名,选择思考时间的配置文件。思考时间是模拟用户从打开页面到执行操作之间的时间。

2.       点击下一步,为测试方案编辑负载模式设置

单击“分步负载”。

将“开始用户计数”设置为 10 个用户。

将“单步持续时间”设置为 10 秒。

将“单步用户计数”设置为 10 个用户/步。

将“最大用户计数”设置为 100 个用户。

单击“下一步”

3.       向方案中添加测试

下一步是“向负载测试方案中添加测试并编辑测试组合”。

单击“添加”选择测试。单击“可用测试”窗格中的测试,再单击箭头将测试添加到“选定的测试”窗格中。

添加完测试后,单击“确定”。

随即出现测试组合。可以使用滑块来调整测试分发。

将滑块调整到首选组合后,单击“下一步”。

4.       为测试方案选择浏览器组合

从下拉列表中选择 IE6 浏览器,将其添加到组合中。

还可以添加其他浏览器。使用滑块来调整测试分发和权重。

单击“下一步”。

为测试方案选择网络组合

选择局域网连接类型以添加到网络带宽组合中。

还可以添加其他网络类型。使用滑块来调整测试分发和权重。

单击“下一步”

5.       指定在负载测试运行期间要使用计数器集监视的计算机

通过单击“添加计算机”选择要在测试运行期间监视的计算机,并键入承载您前面确定的非生产网站的
服务器的名称。

通过添加主机名称,可以收集负载测试中重要的性能信息。(在监视的每个服务器上,都必须具有足
够的用户权限以运行性能监视器。否则,将生成错误。)

可以为承载站点的 SQL 数据库的计算机添加一个单独的项。如果选择不添加任何计算机,则只有本
地负载计数器会添加到测试中。

选择要监视的计数器集。将显示一组预定义的计数器集,它们用于向负载测试中添加特定的性能监
视器。

如果所测试的站点在 ASP.net 服务器上运行,则请在“ASP.net”和“IIS”选择框中为此测试放选中标记。

单击“下一步”。

6.       编辑负载测试的运行设置

将“运行持续时间”设置为 2 分钟,以便对负载测试执行冒烟测试。

生成 Web 测试和负载测试时,最好通过运行一个短暂的小负载测试来验证是否一切都已正确配置并
可按预期运行。此过程称为冒烟测试。

单击“完成”。将在“负载测试编辑器”中打开负载测试。

7.       运行负载测试

在“负载测试编辑器”中打开一个负载测试,再单击绿色的“运行”按钮。负载测试开始运行。

若要使可查看区域最大化,请从 Visual Studio 菜单中单击“视图”,再单击“全屏显示”。

如果测试模拟超过所有阈值,则树控件节点中将出现图标,以指示阈值冲突。错误上覆盖着红色圆
圈,而警告上覆盖着黄色三角形。可以找出超过阈值的计数器,然后通过将图标拖动到关系图上来
绘制该计数器。可在测试运行期间进行此操作。通过观察图例中的“计算机”列,可以确定其所在的
计算机。

如何设置计数器,计数器,以及如何设置阈值。
1.有三种计数器类别:百分比、计数和平均数。这三种计数器类别的例子分别为:“% CPU usage”
(CPU 使用百分比)、“SQL Server lock counts”(SQL Server 锁计数)和“IIS requests per second”
(每秒的 IIS 请求数)。

2.计数器集:将正在测试的服务器添加到需要收集其计数器的计算机的列表中,这一点很重要。这
样就可以在负载测试期间收集和监视任何重要的系统数据。

3.阈值:

比较常数:将性能计数器的值与一个常数值进行比较。

比较计数器:将一个性能计数器的值与另一个性能计数器的值进行比较

如果超过则发出警报:将“如果超过则发出警报”属性设置为“True”,可指示超出阈值将出现问题。
例如,如果对“% Processor Time”(处理器时间百分比(%))设置阈值规则,并且希望值大于 90 时
收到警报,请使用“比较常数”规则类型,将“临界阈值”设置为 90,并将“如果超过则发出警报”设置
为“True”。

将“如果超过则发出警报”属性设置为“False”,可指示低于阈值将出现问题。例如,如果对“Requests
/Sec”(请求/秒)设置阈值规则,并且希望值低于 50 时收到警报,请使用“比较常数”规则类型,将
“临界阈值”设置为 50,并将“如果超过则发出警报”设置为“False”

4.指定计数器集:

在“负载测试向导”的“计数器集”页上,会在“预览选定内容”窗格中看到现有计数器集。还会显示默
认项,包括负载测试计数器集;默认情况下,负载测试计数器集由控制器收集。

(可选)单击“添加计算机”添加一个新的要监视的计算机。系统会提示您输入名称。键入名称,将
在这一新项下看到一些节点,可以选择这些节点。例如,“ADO.NET”、“IIS”、“SQL”等。选中要选
择的节点前面的复选框。新的计数器将出现在“预览选定内容”窗格中。

选择了计数器集之后,单击“下一步”可前进到“负载测试向导”的“运行设置”页。

如何分析测试结果
包括每秒钟的请求数、失败请求的总数、平均响应时间以及平均页面时间。

如何设置sql 数据 数据存储。
将收集性能计数器数据并将其存储在负载测试结果存储区中

1.在运行 SQL Express 的本地服务器上创建数据库表

cd n:"rogram Files"Microsoft Visual Studio 8"Common7"IDE

SQLCMD /S localhost"sqlexpress /i loadtestresultsrepository.sql

SQL 服务器 不在本地机 :

SQLCMD /S ContosoServer1 -i loadtestresultsrepository.sql

  或

SQLCMD /S ContosoServer1 -U <用户名> -P <密码> -i loadtestresultsrepository.sql

2.在“测试”菜单上,单击“管理测试控制器”。将显示“管理测试控制器”对话框

3.在“负载测试结果连接字符串”中,单击浏览按钮 (…) 以显示“连接属性”对话框。

4.在“服务器名称”中,键入 localhost"sqlexpress 或您在第 2 步中使用的服务器的名称
(例如 ContosoServer1)。

5.在“登录到服务器”下,选择“使用 Windows 身份验证”。

6.在“连接到一个数据库”下,选择“选择或输入一个数据库名”。从下拉列表框中选择“LoadTest”。
单击“确定”。

7.在“管理测试控制器”对话框中单击“关闭”。

安装sql server 2005 reporting service

   安装成功后,在数据库中有2个数据库reportserver和 reports,在iis中 自动配置2个虚拟目录
reportserver 和reports

配置已有的web报告站点

1.数据库的连接

web.config 中

<add key="ResultDB" value="server=YourDBServerName;User ID=LoadTestwd=LoadTest;
Database=LoadTest"/>

改为你连接的数据库相应的服务器,用户名,密码。

b.选中PerfResultReports项目,右键选中属性, 设置targeturl为http://你报表服务器/ReportServer
和targetfolder为报表部署到报表服务器下对应的目标文件夹

c.双击PerfResultReports 项目下的共享文件夹中的 LoadTest.rds 文件

   将数据源的联接,改为你的数据库连接,

"Data Source=YourDBServerName;Initial Catalog=LoadTest"

d.修改Resultsforprojects.ascx.cs 中 sqlConnection2 的连接

e.修改ResultsForProjects.ascx.cs中的代码如下:
  1. switch(e.CommandName)

  2.      {

  3.          case "Results" :                        

  4. Response.Redirect("http://你的报表服务器/ReportServer?%2f报表所部署到的文件夹%2fLoadTestSummary&TestRunId=" + runID, false);

  5.          break;

  6. case "LoadChart" :              

  7. Response.Redirect("http:// 你的报表服务器/ReportServer?%2f报表所部署到的文件夹%2fPagePerformanceOverTime&TestRunId=" + runID, false);

  8.          break;

  9.          case "WebRequests" :

  10. Response.Redirect("http:// 你的报表服务器/ReportServer?%2f报表所部署到的文件夹%2fRequestPerformanceDetails&TestRunId=" + runID, false);

  11.          break;

  12.          case "Edit" :

  13.          Session["RunId"] = runID;

  14.          Response.Redirect("home.aspx", false);

  15.          break;

  16.      }
复制代码



作者: 梦想家    时间: 2018-2-28 15:58

作者: Miss_love    时间: 2020-12-30 09:50
支持分享




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2