需要安装VS企业正式版本,VS企业使用版本在做压测时,线程数有最多设置250人的限制

VS企业正式版本安装包:VS 2015 Installation.msg

创建一个Web Performance And Load Test项目

1. 打开Visual Studio,选择File->New->Project->Test->Web Performance and Load Test Project

          注意:项目路径请选择D盘或其他磁盘,尽量不要选择C盘,以免磁盘空间不足,对测试结果准确性造成影响

Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 添加调用方式为Get类型的API (API没有缓存,做压测的时候可以用这一个API来压,即每次请求的参数不需要变化)

 

1. 选中新建好的工程项目,右键Add Web Performance Test

Visual studio压力测试

 

 

 

2. 双击打开工程项目里的WebTest1,右键添加API请求

在配置里,调用方式选择GET,添加API url请求后save一下

 

  Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 

3. 有的API需要添加Headers参数

右键url->Add Header,在配置里添加Name和Value值

Visual studio压力测试

 

 

 

4. 本地运行一下,确保API调用没有问题后再开始做压测

点击Run Test,查看API调用结果是否返回200-成功

在request里勾上Show raw data可以看到请求的原始参数

Visual studio压力测试

 

 

 

添加调用方式为Get类型的API(API有缓存,即每次请求的参数需要变化),

可以通过add datasource或者generate code的方式更改每次请求的参数,这里以WebTest1为例,每次请求里的contactid取不同的值

add datasource

1. 从数据库里以拼接字符串的方式取不同的contactid,把查询结果存放在xml文件里

xml文件参照:第一组200002864079-20002964075.xml

Visual studio压力测试

 

 

 

2. 在url里点击add data source,选择数据源的格式为xml格式,导入xml文件,选中uri

Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 

3. 在url里点击data source,点击uri_Text,此时请求的url显示成{{DataSource1.uri.uri._Text}},本地运行一下,确保API调用没有问题后再开始做压测

Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 

generate code

1. 点击generate code按钮,生成WebTest1Coded.cs文件

注意此时webtest文件和生成的coded cs文件是两个独立的文件,在后面介绍的压测中添加API时需要选择coded cs文件

Visual studio压力测试

 

 

 

2. 在cs文件里添加C#代码,右键点击Run Coded Web Performance Test,确保cs文件运行没有问题后再开始做压测

Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 

添加调用方式为post类型的API(API没有缓存,做压测的时候可以用这一个API来压,即每次请求的参数不需要变化)

1. 选中新建好的工程项目,右键Add Web Performance Test

2. 双击打开工程项目里的WebTest2,右键添加API请求

在配置里,调用方式选择POST,添加API url请求后save一下

3. 右键WebTest2,选择open with xml格式,把<FormPostHttpBody />去掉

添加下面代码:

<Headers>

    <Header Name="Content-Type" Value="application/json" />

     </Headers>

     <StringHttpBody />

Save一下

4. 双击打开WebTest2

填写content-type和stringbody

Save一下

Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 Visual studio压力测试

 

 

 

添加Load Test开始做压测

1. 右键工程项目,Add Load Test

Visual studio压力测试

 

 

 

2. 按向导配置模式、线程数、运行时间、网络  选择On-Premise Load Test在本机做压测

Visual studio压力测试

 

 

Visual studio压力测试

 

 Visual studio压力测试

 

 

一般不填写think time,选择默认的场景。思考时间:被用来模拟人的行为,   使人们在与网站的互动中等待。

思考时间发生在Web测试中的请求和负载测试场景中的测试迭代之间。在负载测试中使用思考时间对于创建更精确的负载模拟是有用的。

Visual studio压力测试

 

 

一般选择持续的线程模式,step load是增量的线程模式

Visual studio压力测试

 

 

默认选择第一种模式,基于请求的总数出压测报告

Visual studio压力测试

 

 

添加进行压测的webtest或者coded cs文件

Visual studio压力测试

 

 

选择网络,默认选择LAN局域网

Visual studio压力测试

 

 

选择浏览器,默认选择Internet explorer 9.0,点击Finish按钮

3. 点击Run Load Test

Visual studio压力测试

 

 

4. Summary Report中几项重要的压测指标

Max User Load:线程数

Duration:压测运行时间

Total Tests:线程数在运行时间内发起的总请求数

Failed Tests(% of total):请求失败的次数/请求总数

Avg.Test Time(sec):服务器平均一秒内处理的请求数

Errors:截图中的get geo locations error可以忽略,通常在线程数逐渐增多的情况下,会出现500-服务器内部错误、504-服务器响应超时错误等等

Visual studio压力测试

 

 Visual studio压力测试

 

 

5. 压测报告模板

观察在运行时间恒定的情况下,随着线程数不断增加,服务器每秒处理的请求数不再增加反而减少了,说明这个API的性能已经达到峰值。

如果在压测过程中看到有大量的500、504或者其他错误,让dev查下原因,看能否优化下SP脚本和代码

Visual studio压力测试

 

相关文章:

  • 2021-06-30
  • 2021-08-21
  • 2021-12-03
  • 2021-11-22
  • 2021-11-23
猜你喜欢
  • 2021-06-06
  • 2021-09-19
  • 2021-09-10
  • 2021-11-28
  • 2022-12-23
  • 2021-08-15
相关资源
相似解决方案