c# - OneTimeTearDown 中抛出异常;未标记为失败的测试
问题描述
标题说明了一切……
- 我正在使用 C#、Visual Studio、NUnit 和 ReSharper 作为我的 TestRunner
- 我有一个带有
[OneTimeTearDown]
方法的单元测试。 - 该方法目前正在引发异常。
- 该测试似乎被标记为“不确定”,而不是失败。
这似乎有点垃圾:(有没有办法解决这个问题,或者它只是框架的工作原理?
解决方案
它结合了框架的工作方式和运行者如何报告结果。在OneTimeTearDown
失败的时间点,所有测试已经通过测试完成事件报告给运行者成功。
因此,这些测试确实运行成功,但在清理夹具时出现了问题。该错误是针对夹具报告的。有些跑步者可能会显示此信息,有些则可能不会。如果您在 Visual Studio 中的测试资源管理器下运行,您会注意到没有显示固定装置的信息,仅针对单个测试。因此,如果跑步者想向您报告失败,除了可能作为输出窗口中的文本之外,没有其他地方可以这样做。
作为一个实验,你可以尝试在下运行你的测试nunit3-console
,看看它是如何处理结果的。您也可以尝试在没有ReSharper 的情况下使用 NUnit 3 VS 适配器,看看效果如何。然后选择您最喜欢的方法和/或向特定跑步者的开发人员提出问题。
PS:如果您在 下运行nunit3-console
,您可以检查 XML 结果文件以查看向任何运行器报告的信息。
抱歉,这不是一个更直接有用的答案!
推荐阅读
- mysql - 如何防止更新后SELECT FOR UPDATE出现死锁异常?
- javascript - 随机播放对象数组无法按预期工作
- regex - 搜索包含两个单词的块
- reactjs - React Dropzone问题:孩子不是一个功能
- java - Android - 在启动时提示/请求权限
- vue.js - 基于视口有条件地渲染 NuxtJS 组件
- c++11 - 使用 CURL 将 JSONRPC 命令发布到 pyBitmessage
- react-native - 如何使用 react-native-navigation-v1 Wix 库将活动定义为启动器
- c# - Rijndael 256 C# 和 PHP 7.2+ 之间的加密/解密
- excel - STDEV.P 如果列中的单元格包含特定文本“*cta*”