命令行的 Visual Studio 负载测试设置参数

Posted

技术标签:

【中文标题】命令行的 Visual Studio 负载测试设置参数【英文标题】:Visual Studio load test setting parameters for command line 【发布时间】:2014-11-06 23:29:53 【问题描述】:

我有一个负载测试项目,我使用负载测试 GUI 从 Visual Studio 定期运行。我想通过更改其参数(例如用户数、运行持续时间等)从命令行运行该测试。

在 Visual Studio 负载测试中,我通常会使用 3 种类型的设置。

    测试设置:用于一般控制器和代理分配。 运行设置:我在其中设置运行时长、测试结果日志的保存位置等。 场景设置:用于设置负载模式和测试组合等。

理想情况下,我应该能够使用 MSTEST 实用程序的某些命令行参数或为每个目标分配一个设置文件来更改这些设置中的任何一个,但是我无法使用 MSTEST 命令行选项来完成该设置更改。我可以使用退出 GUI 之前停止的状态运行负载测试,但是我无法设置当前未激活的运行设置,或者我无法更改场景设置中定义的用户负载。

对于我当前的任务,能够从命令行更改用户负载比更改其他参数更紧迫。因此,如果有人知道如何从命令行更改场景设置,那将有很大帮助。我已经尝试使用不同数量的用户创建多个场景,但是在 Visual Studio 中,似乎无法选择特定场景并使用它执行测试。负载测试开始后,它会按顺序运行每个可用场景。所以我认为出于我的目的,我应该只创建一个场景,并且能够以某种方式从命令行更改用户负载。

提前感谢您的帮助。

【问题讨论】:

【参考方案1】:

据我所知,这些项目都不能用作命令行选项或类似选项。但是所有,或者可能只是大多数,都可以通过load test plugin 以编程方式获得。一种可能的解决方案是在 LoadTestStarting 事件中设置所需的值。这些值可以从文件或环境变量中读取;您可以选择可用的值以及如何表示它们。

This Microsoft blog 介绍了负载测试插件,并有几个例子。

【讨论】:

好的,我使用负载测试插件通过从动态变化的文件中读取用户数量来让它工作。但是它仅适用于场景参数,运行设置是只读的,因此我无法使用插件更改它们,因此我无法在每次测试之前设置运行持续时间。我也不确定测试设置参数。例如,如果我想在每次测试之前从测试设置更改运行测试的代理数量,我不知道该怎么做,除非有办法从插件代码更改测试设置或者我可以设置不同的从命令行设置文件。【参考方案2】:

这是 MSDN 文档,介绍如何使用 MSTest 从命令行设置您希望激活的测试设置。

https://msdn.microsoft.com/en-us/library/ff426021.aspx

很遗憾,我无法找到改变步进负载模式(以及其中的用户数)的方法。

【讨论】:

以上是关于命令行的 Visual Studio 负载测试设置参数的主要内容,如果未能解决你的问题,请参考以下文章

针对不同域运行 Visual Studio 负载测试比较

Visual Studio 2012 负载测试忽略步数

visual studio2013负载测试简单问题记录

在 Visual Studio Team Services(之前是 Visual Studio Online)上运行负载测试时出现通信错误

Visual Studio 负载测试启动和清理方法

从 TFS 构建针对 Visual Studio Online 运行负载测试