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. Zabbix Server设置主机监控

  2. JVM的四种GC算法

    程序在运行过程中,会产生大量的内存垃圾(一些没有引用指向的内存对象都属于内存垃圾,因为这些对象已经无法访问,程序用不了它们了,对程序而言它们已经死亡),为了确保程序运行时的性能,java虚拟机在程序运 ...

  3. 高并发下的 Nginx 优化与负载均衡

    高并发下的 Nginx 优化   英文原文:Optimizing Nginx for High Traffic Loads 过去谈过一些关于Nginx的常见问题; 其中有一些是关于如何优化Nginx. ...

  4. 特征工程中的IV和WOE详解

    1.IV的用途 IV的全称是Information Value,中文意思是信息价值,或者信息量. 我们在用逻辑回归.决策树等模型方法构建分类模型时,经常需要对自变量进行筛选.比如我们有200个候选自变 ...

  5. hdu 5821 Ball 思维题

    Ball Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submis ...

  6. python用BeautifulSoup解析源码时,去除空格及换行符

    一.去除空格 strip()   " xyz ".strip() # returns "xyz"   " xyz ".lstrip() # ...

  7. python3 基本数据类型转换

    '''基本数据类型1:虽然python中的变量不需要声明,但使用时必须赋值 1.整形变量 2.浮点型变量 3.字符型2:可以一个给多个变量赋值,也可以多个给多个变量赋值3:python3中有6个标准数 ...

  8. 邻居子系统输出 之 neigh_output、neigh_hh_output

    概述 ip层在构造好ip头,检查完分片之后,会调用邻居子系统的输出函数neigh_output进行输出,输出分为有二层头缓存和没有两种情况,有缓存时调用neigh_hh_output进行快速输出,没有 ...

  9. Linux 特殊权限

    Linux 有三个高级权限suid,sgid,sticky. 1.suid suid 属性只能运用在可执行文件上,含义是开放文件所有者的权限给其他用户,即当用户执行该执行文件时,会拥有该执行文件所有者 ...

  10. Redis5.0 3台主机三主三从部署Cluster集群

    1.下载安装 [root@ip101 redis-5.0.4]# pwd /opt/app/redis-5.0.4 [root@ip101 redis-5.0.4]# ls 00-RELEASENOT ...