Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#SpecFlow-Pickles文件测试结果_C#_.net_Nunit_Specflow_Picklesdoc - Fatal编程技术网

C#SpecFlow-Pickles文件测试结果

C#SpecFlow-Pickles文件测试结果,c#,.net,nunit,specflow,picklesdoc,C#,.net,Nunit,Specflow,Picklesdoc,目前,我正在尝试从SpecFlow验收测试中获得结果,并将其与Pickles文档集成。我所拥有的是,在构建生成的pickles站点上。 然后,在每次测试中,我都有一个带有文本“非决定性”的图标: 然后,如果我按结果转到场景摘要,我将得到结果: 所以事实上,它显示了所有的场景,但它并没有运行它们来查看哪些是通过的,哪些是失败的 现在我来看看PicklesDocs文档,我认为它可以满足我的需要,它是。当我执行命令Pickles.exe--testresults format=xunit或Pick

目前,我正在尝试从SpecFlow验收测试中获得结果,并将其与Pickles文档集成。我所拥有的是,在构建生成的pickles站点上。 然后,在每次测试中,我都有一个带有文本“非决定性”的图标:

然后,如果我按结果转到场景摘要,我将得到结果:

所以事实上,它显示了所有的场景,但它并没有运行它们来查看哪些是通过的,哪些是失败的

现在我来看看PicklesDocs文档,我认为它可以满足我的需要,它是。当我执行命令
Pickles.exe--testresults format=xunit
Pickles.exe-trfmt=xunit
时,我收到的仍然是:

在这之后,它仍然生成文件“index.html”,但它只显示测试,没有任何结果

你知道我如何配置它工作吗?我是否应该使用NUnit测试结果或使用specflow.exe nunitexecutionreport生成结果,或者pickles文档也可以这样做

注意:我正在使用NUnit实现步骤


谢谢

我是Pickles的维护者,我会尽力帮助你

首先,Pickles不会为您运行测试。您需要首先运行测试,并记下测试输出文件的位置

获得测试结果文件后,需要通过添加
--link results file
参数(或
--lr
)来指示Pickles使用它

您还需要告诉Pickles在运行结果文件时使用了哪个单元测试框架和版本。你写下你正在使用NUnit。假设您使用的是NUnit的最新版本(或至少是3.x版本),则
--trfmt
参数的正确值为nunit3


这有用吗?如果您需要更多帮助,请询问更多问题。

当前Pickles文档不支持来自程序集目标.NET Core或.NET Standard的测试结果输出。可以在这方面做出贡献

我发现使用.Net内核的Pickles的唯一解决方案是使用另一个记录器,例如
XunitXml.TestLogger
。你必须:

  • 引用此Nuget包
  • 运行测试:
    dotnet测试--logger:“xunit;LogFilePath=TestsResults.xml”
  • 使用format
    xunit2运行pickle

您好,谢谢您的回复,这对我帮助很大,但接下来的问题是,它是否可以与“.trx”文件一起使用,或者转换为xml?因为我有下面的前一期。所以我总结为,我得到了带有验收测试的.NETCore2.0程序集-SpecFlow+NUnit(可以用其他框架替换),我想接收结果文件,这样我就可以在pickles站点中集成或使用它。因此,在网上进行成功/失败测试。ThanksPickles支持以下测试结果格式:NUnit 2.x、NUnit 3.x、xUnit 1.x、xUnit 2.x、MSTest、VSTest(MSTest和VSTest都使用.trx文件,但它们在内部是不同的!)Cumber(Ruby和JS)和SpecFlow+Runner(以前称为SpecRun)。不过,我没有.NET核心设置的经验。执行命令“pickles.exe--feature directory=。\'Acceptance Tests'--output directory=。\docs--link results file=TestResults\TestResult.trx--test results format=nunit3--documentation format=html”似乎可以工作。因此,使用TestResult.trx不会引发异常,但在result index.html中,我仍然只有一些场景,但没有任何报告说明它们是成功的还是失败的。现在我尝试了“pickles.exe--documentation format=dhtml--feature directory=--output directory=。\documentation--link results file=“\TestResults\TestResult.xml”“--test results format=nunit3”,所以不要将结果生成为“.trx”,而是生成为“.xml”,当我打开“index.html”生成的文件时,这里再次显示了我收到的=>”和“这是控制台的输出=>”。我认为重要的是我有“合并测试结果?”:“是的。”,在以前的命令行执行中,这是“否”。