我想知道在运行任何负载测试之前是否可以使用启动脚本?例如,可能在执行测试之前播种一些数据或清除任何内容。
在我的实例中,我有一个混合的设计师和编码测试包。简单地说,我有:
coded
次测试designer
创建的网络测试,指向这些编码测试load test
我尝试添加一个类并使用属性[TestInitialize()]
,[ClassInitialize()]
进行装饰,但此代码似乎无法运行。
在实践中展示这一点的一些基本代码(见下文)。有没有办法做到这一点,我可以有一些在测试运行前只运行一次?
[TestClass]
public class Setup : WebTest
{
[TestInitialize()]
public static void Hello()
{
// Run some code
}
public override IEnumerator<WebTestRequest> GetRequestEnumerator()
{
return null;
}
}
可能还应该提到,在我的编码测试中,我添加了这些属性,但它们会被忽略。我遇到了一种解决方法,即创建Plugin
。
修改的
在浏览了一下后,我找到了关于SO的this文章,其中展示了如何实施LoadTestPlugin
。
答案 0 :(得分:2)
Visual Studio提供了一种在测试运行之前和之后运行脚本的方法。它们旨在用于部署测试数据并在测试后进行清理。这些脚本在&#34; .testsettings&#34;的"Setup and cleanup"页面上指定。文件。
负载测试插件可以包含在执行任何测试用例之前和之后运行的代码,也可以在测试执行期间的各个阶段运行。接口是在执行负载测试期间在各个点处引发事件。发生这些事件时,可以调用用户代码。在运行任何测试用例之前引发LoadTestStarting
事件。有关详细信息,请参阅here。
答案 1 :(得分:0)
如果您愿意使用NUnit,则每个测试范围都有SetUp / TearDown,TestFixtureSetUp / TestFixtureTearDown可以为类做一些类似的事情(TestFixture)
答案 2 :(得分:0)
可能有点乱,但你可以将代码放在测试类的静态构造函数中,因为它会在创建第一个实例或引用任何静态成员之前自动运行一次:
onPause()