一、项目中我常用的断言方式:
- 根据页面URL
- 页面的标题
- 页面的提示信息
- 页面关键字
- 以及一些逻辑处理后的元素信息等方式
二、断言——Assert(继承于Object)的一些方法
AssertEquals(String actual, String expected)
Assert.assertTrue(Boolean)
有时候 同一个场景,既可以用 AssertEquals也可以用Assert.assertTrue做断言
1、判断实际和期望——在某个位置应该有什么提示——比较【实际结果】是否等于【期望结果】
** AssertEquals(String actual, String expected)**——如果不相等就报错
//获取提示框的文本内容,期望是"请输入密码"
String actual = driver.findElementByXPath
("//div[@class='form-error-info']").getText();
String expected = "请输入密码";
Assert.assertEquals(actual,expected)
2、判断是否为true——在某个位置有什么东西出现(比如从无到有)
** Assert.assertTrue()——如果不是true就报错**
比如密码错误 出现一个【错误提示】**能定位到该元素,即该元素不为空就是true**
//提示弹窗"帐号或密码错误!"
WebElement element = driver.findElementByXPath("//div[text()='帐号或密码错误!']");
Assert.assertTrue(element != null);
3、用URL做断言的场景示例:
通过url断言的两种方式
//1、显示等待 等待url包含XXX 等不到就报错不为true,就报错
WebDriverWait wait = new WebDriverWait(driver,5);
Boolean flag = wait.until(ExpectedConditions.urlContains("http://8.129.91.152:8765/Index/index111"));
Assert.assertTrue(flag);
//2、硬等待 浏览器自身的跳转,取出当前浏览器的url与期望对比
Thread.sleep(1000);
String actualUrl = driver.getCurrentUrl();
String expectedUrl = "http://8.129.91.152:8765/Index/index";
Assert.assertEquals(actualUrl,expectedUrl);
版权归原作者 墨撕酒家 所有, 如有侵权,请联系我们删除。