selenium:断言
在编写自动化测试脚本时,为了使“机器”去自动辨识test case的执行结果是True还是False,一般都需要在用例执行过程中获取一些信息,来判断用例的执行时成功还是失败。
判断成功失败与否,就涉及到断言。webdriver的断言使用有三种模式:操作(action)、辅助(accessors)、断言(assertion)。
1、操作(action)
模拟用户与Web应用程序的交互,一般用于操作应用程序的状态;
如点击链接,选择选项的方式进行工作;如果一个动作执行失败,或是有错误,当前的测试将会停止执行。
常见命令如下:
open(打开页面)
click(点击)
clickAndWait(点击并等待)
type(文本类型)
select(选择下拉菜单)
selectWindow(选择弹出窗口)
pause(等待指定时间,以毫秒为单位,即要睡眠的时间)
setSpeed(设定执行速度。以毫秒延迟间隔长度。默认没有延迟,即为0)
setTimeout(指定等待动作完成的等待时间。默认为30秒,需要等待的动作包括了OPEN 和WAITFOR)
goBack(模拟用户点击其浏览器上的“back”按钮)
close(模拟用户点击弹出窗体或表单标题栏上的”关闭”按钮)
2、辅助(accessors)
辅助工具,用于检查应用程序的状态并将结果存储到变量中;
如:storeElementPresent(locator,variableName)
其中参数locator表示元素定位器,variableName用于存储结果的变量名;
即将locator定位到的状态存储到variableName变量中,如果该元素出现返回true,否则返回false,可同断言一同使用。
3、断言(assertion)
验证应用程序的状态是否同所期望的一致。
常见的断言包括:验证页面内容,如标题是否为X或当前位置是否正确,或是验证该复选框是否被勾选。
常用断言如下:
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对话框)
waitForElementPresent (等待检验某元素的存在,为真时,则执行)
使用断言的注意点:
①不要使用断言作为公共方法的参数检查,公共方法的参数永远都要执行;
②断言语句不可以有任何边界效应,不要使用断言语句去修改变量和改变方法的返回值;
selenium:断言的更多相关文章
- Selenium断言的使用,等待
自动化测试常用断言的使用方法(python) 自动化测试中寻找元素并进行操作,如果在元素好找的情况下,相信大家都可以较熟练地编写用例脚本了,但光进行操作可能还不够,有时候也需要对预期结果进行判断. 这 ...
- 【Python + Selenium断言】之如何获取定位Web页面列表中的数据
如下图所示: 当定位元素时,我想获取指定的某一列的某一行的断言,如图我只想获取jiancha1的值,有同学会说:直接定位不就好了.但是我们知道,列表的数据会时刻变动的,不能靠定死的路径,那该怎么办呢? ...
- mark资料-selenium断言的分类
操作(action).辅助(accessors)和断言(assertion): 操作action: 模拟用户与 Web 应用程序的交互. 辅助accessors: 这是辅助工具.用于检查应用程序的状态 ...
- selenium 断言与验证
断言和验证都是判断结果是否跟预期效果是否一致,不一致的情况下,断言会导致测试用例直接失败,程序不会继续执行:验证的测试用例会继续执行. 断言的4种模式+5种手段: assert 断言失败时,该测试将终 ...
- selenium断言的分类
操作(action).辅助(accessors)和断言(assertion): 操作action: 模拟用户与 Web 应用程序的交互. 辅助accessors: 这是辅助工具.用于检查应用程序的状态 ...
- Selenium 中文API
Selenium 中文API 转自:http://blog.csdn.net/lh9529/article/details/3946567 概念 Selenium 通过命令进行驱动.Seleniu ...
- Selenium-IDE,在网页上模拟人的操作
想偷懒,不想做很机械重复的网页操作,就百度了一下看看有什么方法,能把自己从重复性的网页操作中解放出来,于是,百度到了selenium ide,折腾许久,用最新版火狐添加了自带selenium ide组 ...
- Selenium-IDE在火狐上的扩展
昨天突然想学学 Selenium,就上网查了一些介绍,发现一些教程基本都是比较老版本的了,使用起来略有不便,所以今天试着写一些最新版本的.请参考Selenium官网.文章以下内容都是在 Mac 机器上 ...
- Selenium 3----获取断言信息
断言:把实际结果与预期进行比较. 一般可以通过获取title .URL和text等信息进行断言. title:用于获得当前页面的标题. current_url:用户获得当前页面的URL. text:获 ...
- selenium关于断言的使用
基本介绍: Selenium工具专门为WEB应用程序编写的一个验收测试工具. Selenium的核心:browser bot,是用JAVASCRIPT编写的. Selenium工具有4种:Seleni ...
随机推荐
- 2018-08-14 中文代码之Spring Boot实现简单REST服务
最终目标详见: 参考MSDN,试搞.NET类库标识符的翻译版 · Issue #54 · program-in-chinese/overview 此文仅为技术探索+原型搭建的第一小步. 源码库: 演示 ...
- springboot 整合 redis
jedis 和 lettuce 都是用来连接 redis 的客户端,jedis 如果不使用连接池是非线程安全的,lettuce 使用 netty 线程安全且并发性能更好: springboot 2.x ...
- 虚拟现实的头戴式设备的视野(FOV)原理
本文原址https://www.cnblogs.com/zhangmiao14/p/5836664.html. 对于VR,它做得最好的就是它对生活的变化,有一些关键因素需要调整的恰如其分.如果做得正确 ...
- Android 内存管理中的 Shallow heap Retained heap
所有包含Heap Profling功能的工具(MAT,Yourkit,JProfiler,TPTP等)都会使用到两个名词,一个是Shallow heap Size,另一个是 Retained heap ...
- Jmeter-测试计划,线程组,取样器,逻辑控制器,断言和监听器
一 测试计划: 是使用jmeter测试的起点,是其他测试元件的容器,一个完整的测试计划包括多个线程组,逻辑控制器,取样器,监听器,配置元件 用户定义的变量: 测试计划上可以添加用户定义的变量.一般添加 ...
- C语音输出前100个回文素数,每行10个,适当对齐
#include<stdio.h> #include<math.h> int ss(long n) { ); ) ; ;i<=sqrt(n);i++) ); ; } lo ...
- 在微信小程序中使用LeanCloud(一)
之前学习了微信小程序前端,使用到LeanCloud线上数据库 [传送门].作为一个前端开发人员,了解后端及数据库是学习工作的需要. LeanCloud直接登录,未注册直接创建账户.它是一款免费的线上数 ...
- Windows7安装Bitvise开启ssh服务
Windows7安装Bitvise开启ssh服务 by:铁乐猫 在Liunx和windows10上配置SSH服务是一件很容易的事,毕竟系统己经自带了ssh的服务功能. 不过在windows7上可不容易 ...
- php学习----文件系统
PHP文件系统之读取文件内容 PHP具有丰富的文件操作函数,最简单的读取文件的函数为file_get_contents,可以将整个文件全部读取到一个字符串中. $content = file_get_ ...
- 14.UA池和代理池
今日概要 scrapy下载中间件 UA池 代理池 今日详情 一.下载中间件 先祭出框架图: 下载中间件(Downloader Middlewares) 位于scrapy引擎和下载器之间的一层组件. - ...