要启用环境配置,将包含的nunit项目作为Specflow BDD框架的一部分(根据此Pass parameters via command line to NUnit)。但是当我尝试从命令提示符加载它时,收到错误消息 。\ nunit-console-x86.exe:找不到夹具。
尝试运行的命令:nunit-console-x86.exe example.nunit / config:CI /run:"xxxx.Features.abcdFeature“$ dll_dir / result = $ result_dir
框架就是这样的 Specflow,Selenium-Share data between different Step definitions or classes 使用Nunit 2.6.4和Specflow 1.9
我的nunit项目文件。我们是否需要在上面的nunit.exe命令中传递.csproj文件或dll?
<NUnitProject>
<Settings activeconfig="Default" />
<Config name="Default" configfile="App.CI.config">
<assembly path="C:\FuncTest\{ProjectName}\{ProjectName}\bin\Debug\{ProjectName}.dll" />
</Config>
<Config name="CI" configfile="App.CI.config">
<assembly path="C:\FuncTest\{ProjectName}\{ProjectName}\bin\Debug\{ProjectName}.dll" />
</Config>
<Config name="UAT" configfile="App.UAT.config">
<assembly path="C:\FuncTest\{ProjectName}\{ProjectName}\bin\Debug\{ProjectName}.dll" />
</Config>
</NUnitProject>
答案 0 :(得分:0)
我假设你有一个包含至少一个测试夹具的项目,看起来像这样:
[TestFixture]
public class MyFirstTestFixture{
[Test]
public void MyFirstTest(){
..
}
}
因此,如果您的项目名为myfirstproj.csproj,其中包含此fixture,则会生成以下文件myfirstproj / bin / debug / myfirstproj.dll
注意,如果使用release设置编译,则可以将release替换为release。我假设我们现在使用debug。
现在您创建一个新的nunit文件(与myfirstproj.csproj在同一文件夹中)并放置这样的竞争对象。 (我假设你称之为myfirstproj.nunit)
<NUnitProject>
<Settings activeconfig="local"/>
<Config name="local" configfile="App.config">
<assembly path="bin\Debug\myfirstproj.dll"/>
</Config>
</NUnitProject>
现在,当你想要这样做时,你会这样做
nunit3-console.exe myfirstproj.nunit /config:local
所以你的设置和我的设置之间存在差异:
这对你有用吗?
如果你想调试这个,我会用这个步骤: