我想并行运行硒测试,并在assembly.cs中设置以下内容。
[assembly: Parallelizable(ParallelScope.Fixtures)]
好的。这样可行。
这是代码结构的简短示例
using NUnit.Framework;
namespace MyExample
{
[TestFixture]
[Category("TestsRunningWithLogin1")]
public class Test_Example1
{
[Test, Order(1)]
public void Test1()
{
}
[Test, Order(2)]
public void Test2()
{
}
}
[TestFixture]
[Category("TestsRunningWithLogin2")]
public class Test_Example2
{
[Test, Order(1)]
public void Test1()
{
}
[Test, Order(2)]
public void Test2()
{
}
}
}
测试需要用户名和密码,然后才能在网页中进行操作。当前在OneTimeSetUp方法中处理登录等。该网页将最后使用的视图保存在用户设置中。
如果我按顺序运行测试,那么我不会有问题,因为测试不会相互影响。所有测试都可以使用相同的用户名运行。
如果并行运行,它们可能会相互影响。比如test1配置了一个view,test2中不应该看到的。
我的想法是与不同的用户一起运行类(其中有很多)。测试开始时,它应该使用用户名,并行运行测试当前未使用该用户名。目前,我不知道nunit正在并行运行哪些测试,因此无法直接对其进行参数化。
我没有找到如何控制并行测试的任何东西。我可以定义是否并行以及有多少并行执行。我想要的是给并行运行测试参数。如果我有3个并行运行的测试类,则要提供所有3个不同的参数。
有什么想法要实现吗?
梦里花落0921
相关分类