使用Visual Studio Team Services进行压力和性能测试(一)——创建基础的URL压力测试

概述

压力测试使应用程序更加健壮,并审核在用户负载下的行为,这样我们可以在当前的基础设施上采取行动,为其扩容以满足我们的需求。

Visual Studio中的压力测试是由虚拟用户分钟计费的,更多信息详见这里

前置条件

要完成这个实验室需要:

  • Visual Studio Team Services 账户.如果没有,需要创建一个。
  • Visual Studio 2017 或更高版本
  • 可以使用Visual Studio team Services Demo Data generator Visual Studio team Services帐户提供预先定义的项目数据。在本动手实验请使用My Health Clinic模板。

如果没有使用VSTS Demo Data Generator,可以从GitHub仓库中复制代码。

1.登录Visual Studio Team Services帐户并单击Load Test

2.在URL面板上点击Create test

3.命名该DevOps Tests测试

4.在当前屏幕上,输入需要从应用程序测试的URL。在开始使用Azure Resource Group之前,先获取Web App Service的URI

5.让我们从应用程序的主页开始:


在这里,还可以指定HTTP Method调用如何使用,以及其他参数,如Querystring参数

6.可以通过Add URL按钮添加其他 URLs


通过对不同URL的多个调用,可以创建压力测试,Visual Studio Team Services Load Testing(压力测试)将按照所引入的顺序依次执行所有的模拟用户操作。

7.点击Settings,现在我们将为压力测试设置持续时间、负载模式和其他设置。

8.在持续时间设置项,将默认值设置为2分钟。


当修改该值时,请记住压力测试是通过Virtual User Minutes(虚拟用户分钟)来定价的。

9.关于压力模式有两个选项。我们将选择25个用户的Constant (常量)

Constant(常量)将在整个压力测试期间模拟相应数量的虚拟用户,此值通过Max v-users字段设定。

Step 负载模式将以一个设定的用户数量开始,并在每个设定的时间段内增加设定的数量。在本例中,从10个用户开始,每10秒钟增加5个用户。

持续到Constant负载25个用户

10.Warm up duration是测试开始和数据样本开始记录之间的时间。通常用于在记录采样值之前,将虚拟用户分步加载到一定的负载级别。在预热期结束前捕获的样本值显示在结果中。在这种情况下,保持0秒。

11.由于应用程序有时呈现不同的内容或浏览器用户代理的不同行为。Browser mix允许我们模拟不同种类的浏览器百分比。注意,这只会影响发送给应用程序的User-agent头,因为压力测试只测试HTTP调用,因此它不会渲染不同的HTML或解释HTML响应。如果应用程序的行为与服务器端的视图不同,只需要使用它。

12.Load location允许我们选择不同的Azure位置,在这种情况下,我们需要测试来自不同区域的应用程序。在本例中选择最接近应用程序的区域。

13.点击Save

现在我们已经创建了一个完整的Load Test (压力测试)

动手实验

类别 文章名称
概述 Visual Studio Team Services 动手实验
计划 使用Visual Studio Team Services敏捷规划和项目组合管理(一)使用团队、区域和迭代
使用Visual Studio Team Services敏捷规划和项目组合管理(二)VSTS中的工作项
使用Visual Studio Team Services敏捷规划和项目组合管理(三)使用Kanban板
使用Visual Studio Team Services敏捷规划和项目组合管理(四)冲刺计划和任务板
使用Visual Studio Team Services敏捷规划和项目组合管理(五)组合管理
使用Visual Studio Team Services敏捷规划和项目组合管理(六)——VSTS仪表盘的使用
使用Visual Studio Team Services敏捷规划和项目组合管理(七)——流程定制
Microsoft Teams 集成 (协作, 沟通 和 行为)
使用VSTS的Git进行版本控制(一)——复制现有仓库)
使用VSTS的Git进行版本控制(二)——提交保存工作)
使用VSTS的Git进行版本控制(三)——评审历史记录)
使用VSTS的Git进行版本控制(四)——在Visual Studio中管理分支)
使用VSTS的Git进行版本控制(五)——从Team Services Portal管理分支)
使用VSTS的Git进行版本控制(六)——拉取请求)
使用VSTS的Git进行版本控制(七)——管理仓库)
使用Visual Studio Team Services持续集成(一)——构建ASP.NET Core)
使用Visual Studio Team Services持续集成(二)——为构建定义属性)
使用Visual Studio Team Services持续集成(三)——使用工件)
使用Visual Studio Team Services持续集成(四)——使用构建运行测试)
Team Services的打包管理)
相关资料 Visual Studio Team Services Demo Generator简介
参考文章 Load and Performance Testing using Visual Studio Team Services

使用Visual Studio Team Services进行压力和性能测试(一)——创建基础的URL压力测试的更多相关文章

  1. 使用Visual Studio Team Services持续集成(一)——构建ASP.NET Core

    使用Visual Studio Team Services持续集成(一)--构建ASP.NET Core 概述 持续集成(CI)是将代码尽可能频繁地集成到共享仓库中的过程.在代码集成期间,构建中断或测 ...

  2. 使用Visual Studio Team Services进行压力和性能测试(二)——压力测试执行

    使用Visual Studio Team Services进行压力和性能测试(二)--压力测试执行 1.点击Run test将会该压力测试进行排队,我们将看到等待测试代理屏幕.Visual Studi ...

  3. Visual Studio Team Services 帐户管理操作

    Visual Studio Team Services 网址: https://www.visualstudio.com/ 1.登陆 2.登陆后新建账户 3.删除团队项目 (1)点击自己的Visual ...

  4. 每次打开VS都报错:我们无法自动填充你的 Visual Studio Team Services 帐户

    我们无法自动填充你的 Visual Studio Team Services 帐户.遇到下面的错误: TF400813: Resource not available for anonymous ac ...

  5. 使用Visual Studio Team Services持续集成(四)——使用构建运行测试

    使用Visual Studio Team Services持续集成(四)--使用构建运行测试 使用构建来运行测试来验证集成是一个很好的实践. MyHealth.API.IntegrationTests ...

  6. 使用Visual Studio Team Services持续集成(三)——使用工件

    使用Visual Studio Team Services持续集成(三)--使用工件 工件是应用程序的可部署组件.Visual Studio Team Services有能力在构建过程中显式地管理工件 ...

  7. 使用Visual Studio Team Services持续集成(二)——为构建定义属性

    使用Visual Studio Team Services持续集成(二)--为构建定义属性 1.从VSTS帐户进入到Build 2.编辑构建定义并单击Options Description:如果这里明 ...

  8. 使用Visual Studio Team Services敏捷规划和项目组合管理(七)——流程定制

    使用Visual Studio Team Services敏捷规划和项目组合管理(七)--流程定制 在Team Services中,可以通过流程定制工作追踪体验.流程定义了工作项跟踪系统的构建部分,以 ...

  9. 使用Visual Studio Team Services敏捷规划和项目组合管理(六)——VSTS仪表盘的使用

    使用Visual Studio Team Services敏捷规划和项目组合管理(六)--VSTS仪表盘的使用 仪表盘使团队能够看到项目的状态和监控项目的进展.简单来说,不必深入到团队项目站点的其他部 ...

随机推荐

  1. visual Studio 2017 扩展开发(三)《绑定快捷键到菜单项》

    如何将键盘快捷方式映射到自定义按钮,怎么使用快捷键启动自己创建的菜单,刚开始做的时候迷糊了,找了很久.可能也是因为刚开始做不是很明白,后面慢慢就懂了.其实非常简单的. 很多快捷键已经在Visual s ...

  2. IDEA的几个常用配置,日常开发必备。

    用了IDEA有很长时间了,身边的同事朋友也都慢慢的开始都从Eclipse切换到IDEA了,其实无论是Eclipse还是IntelliJ IDEA都是开发工具而已,各自都有优点.但是刚从Eclipse切 ...

  3. 从a文件判断是否删除b文件中的行(sed示例)

    bash&shell系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html test.xml文件很大,内容结构如下: <?xml v ...

  4. JavaScript数组入门。

    JavaScript中的array对象就是数组,首先是一个动态数组,而且是一个像c#中 数组 arraylist hashtable等的综合体. var arr = [1, 7, 3, 4, 5];  ...

  5. 【转】JS正则表达式大全(整理详细且实用)

    正则表达式中的特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个 ...

  6. vue使用element-ui的el-input监听不了回车事件解决

    vue使用element-ui的el-input监听不了回车事件,原因应该是element-ui自身封装了一层input标签之后,把原来的事件隐藏了,所以如下代码运行是无响应的: <el-inp ...

  7. JSJ—案例谈面向对象

    有人告诉我那里遍地都是对象——我们把所有的程序代码放在main()里面,事实上,那根本就不是面向对象的做法,在Java的面向对象中,我们也会看到类和对象的不同,以及对象是如何让你的生活更美好(至少程序 ...

  8. epoll代码示例

    #include <errno.h> #include <string.h> #include <stdlib.h> #include <sys/types. ...

  9. JS基础(三)构造函数

    JS中的构造函数 <script language="JavaScript"> window.onload = function(){ function Bottle( ...

  10. MongoDB日期类型查询

    一.前言 MongoDB 里面的日期类型是没有时区概念的,默认存储的是 ISODate("2018-04-02T13:19:16.418Z") 这种格式的零时区时间,比北京时间晚了 ...