gpt4 book ai didi

java - 在 JUnit 测试中捕获 AssertionError 是个好主意吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:08:41 25 4
gpt4 key购买 nike

我有一个对象作为 API 调用的结果,我想声明一个成员变量的值。

此值可以是两个预期值之一,具体取决于 API 调用首先“看到”并首先设置的内容。因此,如果对一个值的断言失败,我想在将测试声明为失败之前对另一个值进行断言。

这样做的最佳方法是什么?我现在拥有的是:

try {
assertEquals("message", someObject.getValue1(), expectedValue1);
} catch(AssertionError ae) {
assertEquals("message", someObject.getValue1(), expectedValue2);
}

我只是不确定这是否是一种可接受的做法。请评论。

最佳答案

将异常用作一种美化的 goto 语句通常不是一个好习惯。或者至少在您的职业生涯中,您会遇到对使用异常进行程序流控制持模糊看法的人。

怎么样:

Assert.assertTrue((someObject.getValue1().equals(expectedValue1) || (someObject.getValue2().equals(expectedValue2));

关于java - 在 JUnit 测试中捕获 AssertionError 是个好主意吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18221712/

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