漠北的天空-The Sky Of North Desert

转载文章中原创作品,请注名出处!
posts - 15, comments - 23, trackbacks - 0, articles - 16
  博客园 :: 首页 :: 新随笔 :: 联系 ::  :: 管理

vs2005 负载测试

Posted on 2008-04-21 10:33 漠北的天空 阅读(1769) 评论(5)  编辑 收藏 网摘 所属分类: vs2005 测试
 

                           Load Test

负载测试;在负载测试过程中进行监视的一组系统性能计数器。计数器集按不同技术划分,计数集中有不同的计数器,设置每个计数器的阈值(警告值和临界值),如果运行的实际时间超过阈值,则警告或报错。

如何运行负载测试

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:"Program 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=LoadTest;Pwd=LoadTest;Database=LoadTest"/>

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

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

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

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

"Data Source=YourDBServerName;Initial Catalog=LoadTest"

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

e.修改ResultsForProjects.ascx.cs中的代码如下:

 switch(e.CommandName)

     {

         case "Results" :                         

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

         break;

case "LoadChart" :              

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

         break;

         case "WebRequests" :

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

         break;

         case "Edit" :

         Session["RunId"] = runID;

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

         break;

     }

http://msdn.microsoft.com/zh-cn/library/ms182594(VS.80).aspx

Feedback

#1楼    回复  引用  查看    

2008-04-21 18:30 by Jeffrey Zhao      
这东西没有感觉比Microsoft Web Stress Tool好多少啊。

#2楼    回复  引用  查看    

2008-04-22 17:15 by BlueMountain      
cnblogs中为数不多的测试文章,希望lz继续,小鸟学习了。

#3楼 [楼主]   回复  引用  查看    

2008-07-16 17:10 by 漠北的天空      
通过一个可配置的 Web 站点报告 Visual Studio Team System 的负载测试结果
http://www.microsoft.com/china/msdn/library/langtool/vsts/ShareTheLoad.mspx?mfr=true

#4楼 [楼主]   回复  引用  查看    

2008-07-16 17:37 by 漠北的天空      
分析测试结果
http://msdn.microsoft.com/zh-cn/library/ms404656(VS.80).aspx

#5楼 [楼主]   回复  引用  查看    

2008-07-17 17:56 by 漠北的天空      
测试报告中
Memory ,Processor,System 的参数分析:
http://www.testfans.com/index.php/viewnews-285.html

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-07-16 15:37 编辑过
Google站内搜索
[推荐职位]上海盛大网络招聘架构师



China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》

相关文章:


相关搜索:
vs2005 负载测试

相关链接: