Selenium 主要通过与测试框架(如 TestNG、JUnit 等)结合使用来实现断言,本身并没有内置断言方法。以下是一些常用的结合测试框架实现的断言:
一、TestNG 框架中的断言:
1. assertEquals(expected, actual):比较两个值是否相等。例如:
import org.testng.Assert;
public class TestSelenium {
public static void main(String[] args) {
String expectedTitle = "Example Page";
String actualTitle = driver.getTitle();
Assert.assertEquals(actualTitle, expectedTitle);
}
}
2. assertTrue(condition):判断条件是否为真。例如:
boolean isElementPresent = driver.findElements(By.id("elementId")).size() > 0;
Assert.assertTrue(isElementPresent);
3. assertFalse(condition):判断条件是否为假。例如:
boolean isElementNotPresent = driver.findElements(By.id("nonExistentElementId")).size() == 0;
Assert.assertFalse(isElementNotPresent);
二、JUnit 框架中的断言:
1. assertEquals(expected, actual):与 TestNG 中的类似,比较两个值是否相等。
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class TestSeleniumJUnit {
@Test
public void testTitle() {
String expectedTitle = "Example Page";
String actualTitle = driver.getTitle();
assertEquals(actualTitle, expectedTitle);
}
}
2. assertTrue(condition)和assertFalse(condition):判断条件的真假。
@Test
public void testElementPresence() {
boolean isElementPresent = driver.findElements(By.id("elementId")).size() > 0;
assertTrue(isElementPresent);
}