WebDriver中断言的使用(一)

来源:互联网 发布:冒险岛2黑胖数据 编辑:程序博客网 时间:2024/04/29 06:39

断言其实可以理解为判断值是否相等,如果等那继续往下走,如果不等,那就会抛出一个异常(自动的进行)。以上我自身的理解,不对的地方请指出

具体怎么用呢?

用法一:

比如说,我发一封邮件后,会有一个提示“发送成功”,那使用断言进行怎么处理呢

//判断发送是否成功


  WebElement check = driver.findElement(By.xpath("/html/body/div[2]/div[1]/div[2]/div[2]/section/h1"));
  System.out.println("文本内容为:"+check.getText());  
  Assert.assertTrue(check.getText().contains("发送成功"));

 

用法二:

在收件箱中查找标题为“写邮件测试”,如果是那就打开,不是则输出未找到标题

不使用断言的脚本为:

//查找邮件标题为


  if(text.equals(titleContent)){
   ba.highLightElement(driver, table);
   table.click();
  }else{
      System.out.println("未找到标题为:"+titleContent+"的邮件");
  }

 

使用断言的语句为:

Assert.assertEquals(“写邮件测试”, text);
  table1.click();

如果断言中不等的情况下,运行时会报如下错误:

其中:Assert.assertEquals(“写邮件测试1”, text);    text的值“写邮件测试”

Exception in thread "main" java.lang.AssertionError: expected [写邮件测试] but found [写邮件测试1]
 at org.testng.Assert.fail(Assert.java:94)
 at org.testng.Assert.failNotEquals(Assert.java:494)
 at org.testng.Assert.assertEquals(Assert.java:123)
 at org.testng.Assert.assertEquals(Assert.java:176)

说明:该例子中的text值为获取的单元格的内容

0 0