【问题标题】:Run selenium NUnit tests in specific order按特定顺序运行 selenium NUnit 测试
【发布时间】:2023-01-08 04:05:32
【问题描述】:

我有一个用 C# .NET 6 中的 NUnit 编写的 selenium 项目。我有一个名为 '测试' 其中有多个子文件夹,每个文件夹都有很多类。每个班只有一个测试方法。这样做的原因是为了构建项目,每个类代表我正在测试的软件中的一个过程。但是,有些进程需要在其他一些进程已经运行之后运行。

我的问题是;有什么方法可以按照我想要的特定顺序运行课程吗?我试过使用

dotnet test --filter

但是,这没有用。我也试过使用 NUnit 的

Order

属性,但这仅在类具有多个测试方法时才有效。

【问题讨论】:

标签: c# selenium .net-core nunit


【解决方案1】:

Order 属性可以放在类或方法上。来自 NUnit 文档:

OrderAttribute 可以放在测试方法或夹具上,以指定测试在夹具中运行的顺序或其他套房它们包含在其中。

引文中的粗斜体是我的。在您的情况下,包含夹具类的“其他套件”是定义它的名称空间。

没有“全局”排序工具,但如果您的所有测试都在同一个命名空间中,则在固定装置上使用 OrderAttribute 将使它们按照您指定的顺序运行。如果它不干扰命名空间的任何其他使用,您可以考虑将它们全部放在一个命名空间中。

一些注意事项:

  1. OrderAttribute 指定测试开始的顺序。如果您并行运行测试,则可能会同时运行多个测试。

  2. 在大多数情况下,让测试相互依赖是不可取的。

  3. 有很多原因不是控制测试的顺序,这在其他人引用的答案中有介绍。我只是在回答您提出的具体“操作方法”问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-05
    • 2018-08-30
    • 2015-12-18
    • 1970-01-01
    • 2014-07-13
    • 2018-08-21
    • 1970-01-01
    相关资源
    最近更新 更多