有没有办法 运行 在 specflow 的并行测试中只使用 Features?

Is there a way to run only Features in parallel tests on specflow?

我目前正在从事一个项目,该项目测试我开发的 Web 应用程序的某些功能。它工作得很好,但我需要 运行 同时使用这些功能来争取时间。

通过更改 "testThreadCount" 属性,我可以 运行 并行测试。我的问题是:我的功能是独立的,但我的场景不是。示例:

    Feature: Test sql insert

    Scenario: 1 - Insert client on the database
    Given I insert my credentials
    And I insert some data on my sql database
    Then my client gets inserted succesfully

    Scenario: 2 - Check if client exists
    Given The above scenario is succesful
    And I log in on my web application
    When I'm on the dashboard
    Then The client should be there

有没有办法 运行 并行处理我的不同功能?当我点击 "Run selected tests" 时,它会优先考虑完整的功能而不是不同的功能。在 运行 下一个

之前,我需要等待第一个场景完成

像这样构建场景是一种非常糟糕的做法,应尽可能避免。话虽如此,如果必须这样做。您可以在功能级别打开并行化。

如果您使用的是 NUnit,则可以在程序集级别添加 [assembly: Parallelizable(ParallelScope.Fixtures)]

Xunit 应该默认 运行 并行测试 class 或在这种情况下的功能。这意味着一个功能中的所有测试将 运行 连续进行。

你仍然应该考虑重构你的场景,这样它们就不会相互依赖我以前一直走这条路,它最终变成了一个无法控制的噩梦。

好吧...我找到了一个解决方法,它设法让它在 SpecRun 上运行。

我只需要 运行 我的功能一个接一个,并让另一个应用程序管理交通线路,所以我开发了一个应用程序,其中包含 Windows 表单,可以做到这一点。

可能不是解决这个问题的最佳方式,但考虑到我的时间和情况,它做得很好。