![]() |
1
8
认真地…
每次测试都应该是绿色的。如果被测试的代码有时执行“糟糕”,那么您需要修复代码,隔离不同的行为。您应该有两个测试,一个测试在剂量测量失败时断言正确(并且应该失败),另一个测试在剂量测量正常时断言正确(并且应该正常)。 在测试中使用重试逻辑是错误的,IMO。您应该总是断言预期的结果,并且应该能够隔离和检测您的代码以返回您期望的结果。 [编辑-添加了一些可用于重试循环的代码] 您可以创建一个循环包装器,它接受任何方法并多次调用它,或者直到成功为止。您还可以让循环函数调用init,或者将其作为单独的参数传递。如果成功,该方法还可以返回bool。根据需要更改签名。
|
![]() |
2
1
第二个例子是几乎相同的代码行和相同的复杂性。有很多方法可以剥皮,你 能够 不是我提倡使用递归。
但关键是它是一个单元测试。如果有什么事情导致它出错,您需要找到一种方法隔离您的测试,使它处于受控环境中。 除非您有这样的要求,否则测试最终应该通过。最好的重试逻辑应该在失败后使用。单击测试并再次单击运行。 |
![]() |
A B · C#Excel自动调整列避免长文本时出错 6 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 6 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 6 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 7 月前 |