如何获得NUnit GUI运行器识别/使用的App.config文件?我尝试将其放置在项目的顶部文件夹中,并将其放置在与功能文件相同的文件夹中。这是我的App.config文件的内容:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="specFlow" type="TechTalk.SpecFlow.Configuration.ConfigurationSectionHandler, TechTalk.SpecFlow"/>
  </configSections>

  <specFlow>
    <runtime detectAmbiguousMatches="true"
             stopAtFirstError="false"
             missingOrPendingStepsOutcome="Error" />
  </specFlow>
</configuration>

具体来说,我试图告诉NUnit在缺少或挂起的步骤时失败,这就是为什么我为此指定“错误”的原因。当我使用TestDriven.net时,这实际上可以正常工作,但是当我使用NUnit GUI运行器时,则不能。 GUI始终显示绿色条,并将测试显示为不确定,而不是错误或失败。

我使用以下命令行参数启动GUI:

E:\ Program Files \ NUnit 2.5.5 \ bin \ net-2.0 \ nunit.exe“E:\ ACSreader新工作\ ACSreader2工作副本\ trunk \ ACSreader2 \ ACSreader2.sln” / config:测试

最佳答案

有关NUnit GUI运行器的更新:

NUnit-Runner似乎无法正确显示/报告不确定的测试。一个不确定的测试在NUnit-GUI中显示为绿色,而TestDriven和ReSharper将其显示为黄色。

如问题所示,可以将SpecFlow配置为将缺少的步骤报告为错误而不是不确定的。

该配置在包含功能文件的项目的App.config中进行。适用于.NET中App.config的常规机制。这意味着在运行时,配置信息必须位于名为.dll.config的文件中。然后,运行时将配置提供给SpecFlow。 SpecFlow不会从App.config中读取配置本身!

确保在运行时正确命名的配置文件与包含测试装置的dll一起存在。 VisualStudio通常在构建项目时透明地执行此操作。

原答案:

App.config必须位于包含测试夹具的项目(包含功能文件的项目)的根文件夹中。

看一下github上的例子。在不同的项目中有几个App.config文件:

http://github.com/techtalk/SpecFlow-Examples/tree/master/ASP.NET-MVC/BookShop/BookShop.AcceptanceTests/

http://github.com/techtalk/SpecFlow-Examples/tree/master/ASP.NET-MVC/BookShop/BookShop.AcceptanceTests.Selenium/

http://github.com/techtalk/SpecFlow-Examples/tree/master/BowlingKata/BowlingKata-MsTest/Bowling.SpecFlow/

关于nunit - NUnit GUI运行器无法识别SpecFlow的App.config,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2963031/

10-17 00:44