博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Visual Studio 单元测试之三---压力测试
阅读量:4223 次
发布时间:2019-05-26

本文共 1593 字,大约阅读时间需要 5 分钟。

 

      我们都知道大名鼎鼎的LoadRuner,但是很少有人知道Visual Studio自带的Test也可以做些简单的压力测试,下面我们就介绍一下如何利用Visual Studio进行压力测试。

      此文是上一篇博文:Visual Studio 单元测试之一---普通单元测试的后续篇章。如果读者对Visual Studio的单元测试不熟悉的话,请先参看上一篇。

本文会自动略去上篇中提到过的相关概念、方法。本文的例子可以使用下面的链接下载:

        做压力测试时,Visual Studio会记录大量的数据并把数据保存在数据库中,所以在进行讲解压力测试之间,让我们先把数据库的准备工作做好。

·         SQLServer里面执行C:/Program Files/Microsoft Visual Studio 10.0/Common7/IDE/ loadtestresultsrepository.sql脚本,创建测试数据库(VS2008相应目录下面也有此脚本)

·         配置压力测试数据库:Test->Manage Test Controllers,配置刚建的数据库。如下图:

21.JPG

 

MathUtility.cs文件中新建一个函数:

        public static void PowerTest()

        {

            Random r1 = new Random(DateTime.Now.GetHashCode());

            Random r2 = new Random(DateTime.Now.AddDays(1).GetHashCode());

            double d = r1.Next() * r2.Next();

            Random r3 = new Random(Convert.ToInt32(d));

            string str = r3.Next().ToString();

            StringBuilder buffer = new StringBuilder();

            foreach (char a in str.ToCharArray())

                buffer.Append(string.Format("{0}-{1}", a, a + a));

        }

并创建这个函数的单元测试函数。

 

新建压力测试:

1.Add->New Test:

22

2.欢迎界面

23.JPG

3.设置这个测试场景的名称及思考时间(Think Time)和迭代思考时间

24.JPG

4.设置压力用户模型。

25.JPG

5.设置压力测试的混合模型。可以根据自己的测试场景需要来选择合适的模型。 26.JPG

6.设置压力测试函数,这些函数都是单元测试函数,可以增加多个压力函数且后面的人数为这个压力函数需要压力人数。

27.JPG

7.设置网络。压力测试与网络好坏关系密切时,此项起作用。 28.JPG

8.性能计数器。可以增加Perfmon里面的相关计数器。关于如何增加自定义计数器,不是本文所讨论的内容。我会另发一篇博文进行讨论。

29.JPG

9.设置压力时间及其他选项。

30.JPG

 

10.设置完成后的loadtest文件。

31.JPG

 

点击上图中的运行就可以起动本次压力测试了。如果你是按我上面的步骤设置的话,会看到类似下面的压力测试图(由于机器性能不同,局部数据会不同):

1.运行了3分钟时的图形

32.JPG

2.运行完成时的图形

33.JPG

运行完成后的压力测试报告

34.JPG

 

至此,我们就完成了一个完整的压力测试。压力测试的情景比较复杂,选项也比较多,有兴趣的话,请大家一个一个的试试。我这里就不把所有的选项含义及所用场景一一描述了。

 

最后介绍一下Load Test Manage.如下图:

35.JPG

可见,我做了多个压力测试,每次的数据都保存在刚才设定的数据库中了,我们可以通过这个窗体来查看、调用以前的压力测试结果及数据。

 

至此,压力测试的基本用法已经讲完,下面介绍Generic测试,数据库测试,UI界面测试。

 

如需转载,请注明本文原创自灰太狼的博客:http://blog.csdn.net/tjvictor

 

你可能感兴趣的文章
人工智能基准(Benchmarking)再思考
查看>>
原创 | 一文了解人工智能对精准扶贫的作用及数字乡村建设现状
查看>>
漫画翻译、嵌字 AI,东京大学论文被 AAAI’21 收录
查看>>
独家 | 用随机森林预测“美版拼多多”商品销量
查看>>
神器 jupyter,终于来了!
查看>>
收藏 | 190 道机器学习面试题
查看>>
编程语言哪家强?4种数据分析领域语言优缺点对比
查看>>
解密「天池」:如何做好一场万人AI竞赛的「大后方」?
查看>>
王茂霖:数据挖掘提分三板斧!(附PPT下载)
查看>>
图神经网络GNN预训练技术进展概述
查看>>
姚班大神胡渊鸣回国创业!超一半员工为清华校友,团队人均竞赛金牌数≥2
查看>>
图挖掘与多关系学习:工具与应用,亚马逊与CMU-WWW2021教程(附ppt)
查看>>
Github近期最有趣的10款机器学习开源项目
查看>>
新年伊始,我们共赴数据盛宴,与未来对话!(文末有彩蛋)
查看>>
独家 | 一文带你上手卷积神经网络实战(附数据集&学习资料)
查看>>
开发者必读:计算机科学中的线性代数(附论文)
查看>>
独家 | 这15个最热门的GitHub库你不可错过!
查看>>
新年伊始,我们共赴数据盛宴,与未来对话 !(文末有彩蛋)
查看>>
手把手教你用Pandas透视表处理数据(附学习资料)
查看>>
数据蒋堂 | JOIN延伸 - 维度查询语法
查看>>