gpt4 book ai didi

junit - assertThat() 总是成功的

转载 作者:行者123 更新时间:2023-12-05 08:42:15 24 4
gpt4 key购买 nike

我有一个在应该失败的时候没有失败的测试:

import static org.assertj.core.api.Assertions.assertThat;

@Test
public void testTransactionResponse() {
String id= "004";
long amount= 5000001L;
TransactionResource transactionResource = buildTransactionResource(amount, "EUR");
System.out.println(transactionController.create(id, transactionResource).getStatusCode()); //the output is 403
assertThat(transactionController.create(id, transactionResource).getStatusCode().equals(200)); //is true and test doesn't fail
}

这怎么可能?

最佳答案

assertThat返回 BooleanAssert并且实际上没有断言任何东西。

AssertJ 提供了流畅的 API,因此您需要在此之后调用断言方法:

assertThat(
transactionController.create(id, transactionResource).getStatusCode().equals(200)
).isTrue();

但您似乎不需要 AssertJ。 JUnit自己的assertTrue就足够了:

 assertTrue(transactionController.create(id, transactionResource).getStatusCode().equals(200));

或者更好,assertEquals :

 assertEquals(200, transactionController.create(id, transactionResource).getStatusCode());

关于junit - assertThat() 总是成功的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42771349/

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