elenium提供了三种模式的断言:assert 、verify、waitfor

1)Assert(断言) 失败时,该测试将终止。

2)Verify(验证) 失败时,该测试将继续执行,并将错误记入日志显示屏

3)Waitfor(等待) 用于等待某些条件变为真

如果该条件为真,他们将立即成功执行。如果该条件不为真,则将失败并暂停测试。直到超过当前所设定的超过时间。一般跟setTimeout时间一起使用

常用断言

  • assertLocation(判断当前是在正确的页面)
  • assertTitle(检查当前页面的 title 是否正确)
  • assertValue(检查 input 的值, checkbox 或 radio,有值为”on”无为”off”)
  • assertSelected(检查 select 的下拉菜单中选中是否正确)
  • assertSelectedOptions(检查下拉菜单中的选项的是否正确)
  • assertText(检查指定元素的文本)
  • assertTextPresent(检查在当前给用户显示的页面上是否有出现指定的文本)
  • assertTextNotPresent(检查在当前给用户显示的页面上是否没有出现指定的文本)
  • assertAttribute(检查当前指定元素的属性的值)
  • assertTable(检查 table 里的某个 cell 中的值)
  • assertEditable(检查指定的 input 是否可以编辑)
  • assertNotEditable(检查指定的 input 是否不可以编辑)
  • assertAlert(检查是否有产生带指定 message 的 alert 对话框)
  • verifyTitle (检查预期的页面标题)
  • verifyTextPresent (验证预期的文本是否在页面上的某个位置)
  • verifyElementPresent(验证预期的UI元素,它的HTML标签的定义,是否在当前网页上)
  • verifyText(核实预期的文本和相应的HTML标签是否都存在于页面上)
  • verifyTable(验证表的预期内容)
  • waitForPageToLoad(暂停执行,直到预期的新的页面加载)
  • waitForElementPresent (等待检验某元素的存在。为真时,则执行)

异常类型

  • AssertionError:assert语句失败
  • AttributeError:试图访问一个对象没有的属性
  • IOError:输入输出异常,基本是无法打开文件
  • ImportError:无法引入模块或者包,基本是路径问题
  • IndentationError:语法错误,代码没有正确的对齐
  • IndexError:下标索引超出序列边界
  • KeyError:试图访问字典里不存在的键
  • KeyboadrInterrupt:Ctrl+c被按下
  • NameError:使用一个还未赋值对象的变量
  • SyntaxError:python代码逻辑语法错误,不能执行
  • TypeError:传入的对象类型与要求不符
  • UnboundLocalError:试图访问一个还未设置的全局变量,基本上是由于另有一个同名的全局变量,导致你以为在访问
  • ValueError:传入一个不被期望的值,即使类型正确

UnitTest框架中的断言

(在unittest单元测试框架中,TestCase类提供了一些方法来检查并报告故障)

 

TestNG框架中的常用的断言

    • assertTrue:判断是否为True。
    • assertFalse:判断是否为false。
    • assertSame:判断引用地址是否相同。
    • assertNotSame:判断引用地址是否不相同。
    • assertNull:判断是否为null。
    • assertNotNull:判断是否不为null。
    • assertEquals:判断是否相等,Object类型的对象需要实现haseCode及equals方法。
    • assertNotEquals:判断是否不相等。
    • assertEqualsNoOrder:判断忽略顺序是否相等。

selenium三种断言以及异常类型的更多相关文章

  1. selenium 三种断言以及异常类型

    selenium 提供了三种模式的断言:assert .verify.waitfor Assert 失败时,该测试将终止. Verify 失败时,该测试将继续执行,并将错误记入日显示屏 .也就是说允许 ...

  2. python selenium 三种等待方式详解[转]

    python selenium 三种等待方式详解   引言: 当你觉得你的定位没有问题,但是却直接报了元素不可见,那你就可以考虑是不是因为程序运行太快或者页面加载太慢造成了元素不可见,那就必须要加等待 ...

  3. 深入selenium三种等待方式使用

    深入selenium三种等待方式使用 处理由于网络延迟造成没法找到网页元素 方法一 用time模块不推荐使用 用time模块中的time.sleep来完成等待 from selenium import ...

  4. XHTML 1.0 的三种 XML 文档类型 DOCTYPE

    XHTML 1.0 的三种 XML 文档类型 XHTML 1.0 规定了三种 XML 文档类型 XHTML 1.0 Strict <!DOCTYPE html PUBLIC "-//W ...

  5. Selenium 三种等待

    问题 : 强制等待和隐式等待的区别怎么理解? 和pause有什么区别?什么时候适用pause? 第二篇文章更清楚一点. 以下内容引自: https://www.cnblogs.com/xu-jia-l ...

  6. Python selenium 三种等待方式详解(必会)

    很多人在群里问,这个下拉框定位不到.那个弹出框定位不到…各种定位不到,其实大多数情况下就是两种问题:1 有frame,2 没有加等待.殊不知,你的代码运行速度是什么量级的,而浏览器加载渲染速度又是什么 ...

  7. Python selenium 三种等待方式解读

    1. 强制等待第一种也是最简单粗暴的一种办法就是强制等待sleep(xx),强制让闪电侠等xx时间,不管凹凸曼能不能跟上速度,还是已经提前到了,都必须等xx时间.看代码: # -*- coding: ...

  8. Python selenium 三种等待方式详解

    1. 强制等待第一种也是最简单粗暴的一种办法就是强制等待sleep(xx),强制让闪电侠等xx时间,不管凹凸曼能不能跟上速度,还是已经提前到了,都必须等xx时间.看代码: # -*- coding: ...

  9. Selenium三种等待的使用方式

    在UI自动化测试中,必然会遇到环境不稳定,网络慢的情况,这时如果你不做任何处理的话,代码会由于没有找到元素,而报错.这时我们就要用到wait(等待),而在Selenium中,我们可以用到一共三种等待, ...

随机推荐

  1. Mac下 CMD常用命令

    1.常用命令 pwd     当前工作目录 cd(不加参数) 进root cd(folder)      进入文件夹 cd ..     上级目录 cd ~     返回root cd -     返 ...

  2. Python之阿姆斯特朗数

    # Python 检测用户输入的数字是否为阿姆斯特朗数 # 如果一个n位正整数等于其各位数字的n次方之和,则称该数为阿阿姆斯特朗数 while True: # 获取用户输入的数字 num = int( ...

  3. jvm——Java main方法的执行

    这是什么神仙博客! https://www.cnblogs.com/kaleidoscope/p/9629156.html

  4. Vue上传通过“服务端签名后直传”上传文件到阿里云 报错 400 Bad Request

    我报错的原因是 formData.append('file', file) 放在签名前面了 解决办法 formData.append('file', file) 一定在最后 /** * 上传文件到 o ...

  5. jmeter-请求头需要URIEncode编译时

    使用函数 ${__urldecode()} 例如 :${__urldecode(%E4%BB%93%E5%BA%93)}${__urldecode(${参数变量})}

  6. python数据分析-数据导入

    1.导入CSV格式数据 import pandas data = pandas.read_csv("C:\\Users\\zhaosai\\Desktop\\进击的DBA\\谁说菜鸟不会数据 ...

  7. jQuery文档操作之克隆操作

    语法: $(selector).clone(); 解释:克隆匹配的DOM元素 $("button").click(function(event) { //1.clone():克隆匹 ...

  8. eureka 服务实例实现快速下线快速感知快速刷新配置解析

    Spirng Eureka 默认配置解读 默认的Spring Eureka服务器,服务提供者和服务调用者配置不够灵敏,总是服务提供者在停掉很久之后,服务调用者很长时间并没有感知到变化.或者是服务已经注 ...

  9. 软工团队Git现场编程实战

    组员职责分工 成员 分工 鲍子涵 分配职责,整合代码 吴宜航 UI设计与实现 钟博 UI设计与实现(Main Coder) 黄海东 数据整理 王镇隆 前端api接口分析和使用(Main Coder) ...

  10. Anaconda官网下载太慢/出错,以及Anaconda下载包又慢又出错的总体方法,应该如何快速下载,使用上海科技大学的开源镜像站即可

    1.最新更新:清华源和中科大源都已经挂了,不要再用他们的镜像源了!!!用上海科技大学的镜像!!!! 2.其次,CSDN上大多的快速装包法都在现在(2019.5.11)出现了问题,也不全,本文是亲自实践 ...