在JAVA和JUnit中都存在断言吗?

时间:2013-01-09 01:34:17

标签: java selenium junit webdriver assert

我正在查看由x人长期发布的问题之一。

Ex:assertEquals(driver.getPageSource()。contains(“sometext”),true);

(或)assertEquals(boolean,boolean);

如果存在上述方法,我喜欢使用它。我查看了JUnit API及其方法,但没有这样的方法。

1)如果存在,有人可以发布相关链接吗?

2)JAVA默认类中是否存在断言? (我知道他们在JUNIT那里)

5 个答案:

答案 0 :(得分:4)

为什么不使用assertTrue(driver.getPageSource().contains("sometext"));

答案 1 :(得分:3)

如果要在主Java代码中进行断言(比如进行健全性检查),可以使用assert keyword。来自JUnit的assertTrue() and assertEquals()之类的方法旨在用于基于JUnit的单元测试代码。

答案 2 :(得分:3)

assertEquals方法在JUnit中,特别是在org.junit.Assert类中:

您通常使用如下静态导入语句导入它们:

import static org.junit.Assert.*;

assert本身是核心Java的一部分,它提供了一种方法来添加在调试时运行的健全性检查,但在生产代码中被忽略(因此不会增加任何开销)

assert(something==somethingElse);

答案 3 :(得分:3)

最基本的例子是@ daniel-kaplan建议的那个,但如果您可以选择在测试范围内添加额外的lib,我建议Hamcrest matchers。他们添加了超棒的语法糖。

你的例子是:

assertThat(driver.getPageSource(), containsString("someText"));

答案 4 :(得分:0)

使用javadoc生成的API文档。 JUnit javadoc link

如果要使用该方法来比较beteewn boolean和boolean, 也许你可以使用方法assertTrue(布尔条件)。

java代码:

 assertTrue(driver.getPageSource().contains("sometext"));