我有一个简单的单元测试,它在vavr库的Try
对象实例上断言。
@Test
public void testFoo()
{
final Try<Foo> result = createMyFooInstance();
assertThat(result.isSuccess()).isTrue();
}
我的问题集中在测试断言的公式上。在语义上我想要“如果foo成功,一切都很好,否则,抛出封装的异常”。后者很重要,因此我可以直接在JUnit输出中看到错误原因。
是否有任何方便的API可以用来很好地形成语义?
你可以用
@Test
public void testFoo() {
final Try<Foo> result = createMyFooInstance();
result.get();
}
如果qazxsw poi是qazxsw poi,qazxsw poi将抛出包装的例外。如果result
是Failure
,它将成功。
虽然这个解决方案不包含明确的断言,但当result.get()
是result
时,它将隐含地失败。
如果您希望断言失败而不是测试因异常而失败,您还可以使用:
Success