JUnit Asserttrue例子
时间:2020-02-23 14:41:32 来源:igfitidea点击:
JUNIT 5的org.junit.jupiter.Assertions类提供了不同的静态断言方法来编写测试用例。
请注意,在JUnit 4或者JUnit 3的情况下,我们需要使用JUnit的org.junit.assert类来使用Asserttrue方法来声明。
断言.Asserttrue()检查提供的布尔条件是否为真。
如果情况,条件是假的,它将通过asserterror。
public static void assertTrue(boolean condition) public static void assertTrue(boolean condition, Supplier messageSupplier) public static void assertTrue(BooleanSupplier booleanSupplier) public static void assertTrue(BooleanSupplier booleanSupplier, String message) public static void assertTrue(boolean condition,String message) public static void assertTrue(BooleanSupplier booleanSupplier,Supplier messageSupplier)
这是一个简单的例子
package org.igi.theitroad; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; public class AssertTrueTest { AssertTrueTest att; public boolean isPrime(int number) { for (int i = 2; i <=Math.sqrt(number); i++) { if(number%i==0) return false; } return true; } @BeforeEach public void beforeEachTest() { att = new AssertTrueTest(); } //assertTrue(boolean condition) @Test public void primeNumberTestwithCondition(){ Assertions.assertTrue(att.isPrime(5)); } //assertTrue(boolean condition, String message) @Test public void primeNumberTestwithConditionAndMessage(){ Assertions.assertTrue(att.isPrime(91),"Number is not prime"); } //assertTrue(BooleanSupplier booleanSupplier) @Test public void primeNumberTestWithBooleanSupplier(){ Assertions.assertTrue(() -> att.isPrime(7)); } // assertTrue(boolean condition, Supplier<String> messageSupplier) @Test public void primeNumberTestWithConditionAndSupplier(){ Assertions.assertTrue(att.isPrime(13),() -> "Number is not prime"); } //assertTrue(BooleanSupplier booleanSupplier, String message) @Test public void primeNumberTestWithBooleanSupplierAndMessage(){ Assertions.assertTrue(() -> att.isPrime(17),"Number is not prime"); } //assertTrue(BooleanSupplier booleanSupplier, Supplier<String> messageSupplier) @Test public void primeNumberTestWithBooleanSupplierAndSupplier(){ Assertions.assertTrue(() -> att.isPrime(89),() -> "Number is not prime"); } }
运行上面的TestCase时,我们将得到以下输出:
让我们了解每个测试用例的输出:
PrimenumberteStwithCondition - Pass
由于 5是素数,asserttrue将返回true,此测试用例将通过。
primenumbertestwithconditionandmessage - 失败
由于91不是素数,asserttrue将返回true,此测试用例将失败。
Primenumbertestwithbooleansupplier - 通过
由于 13是素数,asserttrue将返回true,此测试用例将通过。
primenumbertestwithconditionandsupplier - 通过
由于 5是素数,asserttrue将返回true,此测试用例将通过。
primenumbertestwithbooleansupplierandmessage - 通过
由于 17是素数,asserttrue将返回true,此测试用例将通过。
primenumbertestwithbooleansupplierandsupplier - 通过
由于 89是素数,asserttrue将返回true,此测试用例将通过。