Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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
Continuous integration SpecRun返回退出代码120,带有@ignore tests_Continuous Integration_Specflow_Exit Code_Specrun - Fatal编程技术网

Continuous integration SpecRun返回退出代码120,带有@ignore tests

Continuous integration SpecRun返回退出代码120,带有@ignore tests,continuous-integration,specflow,exit-code,specrun,Continuous Integration,Specflow,Exit Code,Specrun,作为持续集成设置的一部分,从命令行运行SpecRun,最近一个被忽略的(@ignore)测试在SpecRun完成时生成了120的退出代码 目前,我们在任何不等于0(通用成功指标!)的退出代码上破坏构建 退出代码120的确切含义是什么?这仅仅是“测试被忽略”吗?还是意味着更多 返回哪些其他值 下面是构建输出示例。我们收集所有退出代码(目前有1个SpecRun任务,因此只收集1个退出代码),并打印到“退出代码” 我在论坛中找到了错误代码列表: 按错误代码对列表进行排序后,您会得到: Unknown

作为持续集成设置的一部分,从命令行运行SpecRun,最近一个被忽略的(
@ignore
)测试在SpecRun完成时生成了120的退出代码

目前,我们在任何不等于0(通用成功指标!)的退出代码上破坏构建

退出代码120的确切含义是什么?这仅仅是“测试被忽略”吗?还是意味着更多

返回哪些其他值

下面是构建输出示例。我们收集所有退出代码(目前有1个SpecRun任务,因此只收集1个退出代码),并打印到“退出代码”


我在论坛中找到了错误代码列表:

按错误代码对列表进行排序后,您会得到:

Unknown = 0,
Succeeded = 110,
Ignored = 120,
Pending = 210 
NothingToRun = 310,
Skipped = 320,
Inconclusive = 410,
CleanupFailed = 420,
RandomlyFailed = 430,
Failed = 440,
InitializationFailed = 450,
FrameworkError = 510,
ConfigurationError = 520,
基于此列表,我们在构建服务器上使用以下命令行脚本来执行测试:

SpecRun.exe [...]

if errorlevel 200 exit /b %errorlevel%

exit /b 0
我们使用exit命令返回错误代码。 对于较高的错误级别代码(>=200),我们返回错误代码以中断构建。 但是,低于该限制的错误代码被视为成功,我们返回0


使用此限制(200),成功和忽略的案例将被视为成功,其他一切都会破坏构建。如果您还想允许挂起的测试(210),只需在If中检查更高的错误代码。

58个项目!?!你需要独立生活!:-)@阿尔斯基,哈,是的,我们这样做,这完全是另一个话题;)谢谢你提供的信息。TechTalk不应该这样做,因为退出代码1对于其他应用程序中的某些类型的错误来说是相当标准的。这意味着,如果编写一个抽象脚本并检查各种exe的结果,则必须处理specrun的特殊情况。糟糕。使用SpecFlow+Runner 3.0,我们更改了specrun.exe的退出代码。您可以在此处找到实际的:
SpecRun.exe [...]

if errorlevel 200 exit /b %errorlevel%

exit /b 0