gpt4 book ai didi

unit-testing - 单元测试显示输出

转载 作者:行者123 更新时间:2023-12-03 15:14:26 26 4
gpt4 key购买 nike

我搜索了单元测试工具,我发现合适的一个是 NUnit,我认为它很好,但我的问题是这个工具只显示测试方法结果(通过或失败),我不仅需要显示通过或失败,还需要显示输出。如何使用 NUnit 显示输出,或者是否有其他单元测试工具也不错?如果不支持,请建议我如何解决。

欢迎所有想法

最佳答案

管道 System.Console 的输出将适用于 NUnit,但这不是您的最佳选择。

对于通过测试,您不需要查看控制台输出来验证测试是否已通过。如果你是,你做错了。测试应该是自动化和可重复的,无需人工干预。手动验证不会扩展并产生误报。

另一方面,为失败的测试提供控制台输出是有帮助的,但它只会提供可以通过附加调试器推断出的信息。将控制台日志记录添加到您的应用程序需要付出很多额外的努力,但 yield 甚微。

相反,请确保您的错误消息是有意义的。在编写测试时,请确保您的断言是明确的。始终尝试使用与您正在断言的对象非常匹配的断言,并提供一个失败消息来解释为什么测试很重要。

例如:

// very bad
Assert.IsTrue( collection.Count == 23 );

当测试失败时,上述断言并没有真正提供太多帮助。当 NUnit 格式化断言的输出时,这个断言不会帮助你,因为它会声明类似“期望 但为 ”之类的东西。

更合适的断言将提供更有意义的测试失败。
// much better
Assert.AreEqual(23, collection.Count,
"There should be a minimum of 23 items by default.");

这提供了更有意义的失败消息:“预期 <23> 但为 <0>:默认情况下应至少有 23 个项目。”

关于unit-testing - 单元测试显示输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5302781/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com