selenium关于断言的使用

摘要:
Selenium的核心:browserbot,是用JAVASCRIPT编写的。Selenium工具有4种:SeleniumIDE,SeleniumControl,SeleniumCore这儿我们主要总结了Selenium-IDE工具Selenium-IDE只限于firefox浏览器中使用。Selenium命令分成三类:操作、辅助和断言:操作action:模拟用户与Web应用程序的交互。一般用于操作应用程序的状态。操作中常见命令有:openclick(点击)clickAndWaittypeselectselectWindowpausesetSpeed(设定执行速度。以毫秒延迟间隔长度。默认没有延迟,即为0)setTimeout(指定等待动作完成的等待时间。

基本介绍:

Selenium工具专门为WEB应用程序编写的一个验收测试工具。

Selenium的核心:browser bot,是用JAVASCRIPT编写的。

Selenium工具有4种:Selenium IDE, Selenium Control, Selenium Core

这儿我们主要总结了Selenium-IDE工具

Selenium-IDE只限于firefox浏览器中使用。

Selenium命令分成三类:

操作(action)、辅助(accessors)和断言(assertion):

操作action:

模拟用户与 Web 应用程序的交互。一般用于操作应用程序的状态。

如点击链接,选择选项的方式进行工作。如果一个动作执行失败,或是有错误,当前的测试将会停止执行。

操作中常见命令有:open(打开页面)

click(点击)

clickAndWait(点击并等待)

type(文本类型)

select(选择下拉菜单)

selectWindow(选择弹出窗口)

pause(等待指定时间,以毫秒为单位,即要睡眠的时间)

setSpeed(设定执行速度。以毫秒延迟间隔长度。默认没有延迟,即为0)

setTimeout(指定等待动作完成的等待时间。默认为30秒。

需要等待的动作包括了OPEN 和WAITFOR)

goBack(模拟用户点击其浏览器上的“back”按钮)

close(模拟用户点击弹出窗体或表单标题栏上的”关闭”按钮)

click与clickAndWait的区别:

例如对比录制脚本:

ComandTarget

clickcss=input[type=submit]//句一

clickAndWaitcss=input[type=submiit]//句二

转成PHPUNIT后代码为:

$this->click(“css=input[type=submit]“);//此句对应上面的 句一

$this->click(“css=input[type=submit]“);//此句和下一句,对应上面的 句二

$this->waitForPageToLoad(“30000″);

区别在于:clickAndWait后会有一个默认的页面等待时间为30秒;而click没有等待时间;

Andwait这个后缀,告诉我们,该命令将使浏览器向服务器产生一个请求,使Selenium等待加载一个新的页面。

辅助accessors:

这是辅助工具。用于检查应用程序的状态并将结果存储到变量中。

如:storeElementPresent(locator,variableName)

其中参数:locator 表示元素定位器;variableName 用于存储结果的变量名。

即将locator定位到的状态存储到variableName变量中。

如果该元素出现返回true,否则返回false

可同断言一同使用。

断言assertion:

验证应用程序的状态是否同所期望的一致。

常见的断言包括:验证页面内容,如标题是否为X或当前位置是否正确,或是验证该复选框是否被勾选。

断言被用于三种模式: assert、verify、waitfor

Assert 失败时,该测试将终止。

Verify 失败时,该测试将继续执行,并将错误记入日显示屏。也就是说允许此单个验证通过。确保应用程序在正确的页面上。

Waitfor用于等待某些条件变为真。可用于AJAX应用程序的测试。

如果该条件为真,他们将立即成功执行。如果该条件不为真,则将失败并暂停测试。直到超过当前所设定的超时时间。一般跟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对话框)、

waitForElementPresent (等待检验某元素的存在。为真时,则执行。)

基本介绍:

Selenium工具专门为WEB应用程序编写的一个验收测试工具。

Selenium的核心:browser bot,是用JAVASCRIPT编写的。

Selenium工具有4种:Selenium IDE, Selenium Control, Selenium Core

这儿我们主要总结了Selenium-IDE工具

Selenium-IDE只限于firefox浏览器中使用。

Selenium命令分成三类:

操作(action)、辅助(accessors)和断言(assertion):

操作action:

模拟用户与 Web 应用程序的交互。一般用于操作应用程序的状态。

如点击链接,选择选项的方式进行工作。如果一个动作执行失败,或是有错误,当前的测试将会停止执行。

操作中常见命令有:open(打开页面)

click(点击)

clickAndWait(点击并等待)

type(文本类型)

select(选择下拉菜单)

selectWindow(选择弹出窗口)

pause(等待指定时间,以毫秒为单位,即要睡眠的时间)

setSpeed(设定执行速度。以毫秒延迟间隔长度。默认没有延迟,即为0)

setTimeout(指定等待动作完成的等待时间。默认为30秒。

需要等待的动作包括了OPEN 和WAITFOR)

goBack(模拟用户点击其浏览器上的“back”按钮)

close(模拟用户点击弹出窗体或表单标题栏上的”关闭”按钮)

click与clickAndWait的区别:

例如对比录制脚本:

ComandTarget

clickcss=input[type=submit]//句一

clickAndWaitcss=input[type=submiit]//句二

转成PHPUNIT后代码为:

$this->click(“css=input[type=submit]“);//此句对应上面的 句一

$this->click(“css=input[type=submit]“);//此句和下一句,对应上面的 句二

$this->waitForPageToLoad(“30000″);

区别在于:clickAndWait后会有一个默认的页面等待时间为30秒;而click没有等待时间;

Andwait这个后缀,告诉我们,该命令将使浏览器向服务器产生一个请求,使Selenium等待加载一个新的页面。

辅助accessors:

这是辅助工具。用于检查应用程序的状态并将结果存储到变量中。

如:storeElementPresent(locator,variableName)

其中参数:locator 表示元素定位器;variableName 用于存储结果的变量名。

即将locator定位到的状态存储到variableName变量中。

如果该元素出现返回true,否则返回false

可同断言一同使用。

断言assertion:

验证应用程序的状态是否同所期望的一致。

常见的断言包括:验证页面内容,如标题是否为X或当前位置是否正确,或是验证该复选框是否被勾选。

断言被用于三种模式: assert、verify、waitfor

Assert 失败时,该测试将终止。

Verify 失败时,该测试将继续执行,并将错误记入日显示屏。也就是说允许此单个验证通过。确保应用程序在正确的页面上。

Waitfor用于等待某些条件变为真。可用于AJAX应用程序的测试。

如果该条件为真,他们将立即成功执行。如果该条件不为真,则将失败并暂停测试。直到超过当前所设定的超时时间。一般跟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对话框)、

waitForElementPresent (等待检验某元素的存在。为真时,则执行。)

异常类型

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

UnitTest框架中的断言

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

selenium关于断言的使用第1张

免责声明:文章转载自《selenium关于断言的使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇asp.net 操作excel的一系列问题(未完待续)Spring的replace-method标签下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

vue+elementui +input输入框关键字筛选检索表格数据展示+分页功能

第一种用axios发送请求到后台,需要后台配合,才能在表格里面渲染页面;想偷懒的小伙建议去直接粘贴复制第三种 <template> <div class="tableDatas"> <div class="searchWord"> <div style="display: inline-block"> 搜索...

常见使用技巧

常见使用技巧 常见SolidWorks使用问答: 问:你想隐藏装配体里头的零件,怎么办?答:右键点击零件或者树状图中的零件名字,然后点眼睛那个图标。更快捷的方式,只需要把鼠标放到那个零件上,按一下Tab,隐藏了。 问:隐藏装配体里头的零件想回复怎么办?答:把鼠标对准隐藏文件的位置,按Shift+tab,零件就回来了。 问:想在装配体树状图中拖动子装配体的位...

远程桌面连接Windows Server2008 未安装任何音频输出设备 启用声音音频解决方案

WinXP或Win2003 具体方法:开始>运行>gpedit.msc打开组策略 依次点:计算机配置>管理模板>Windows组件>终端服务>客户端/服务器数据重定向右边有一个“允许音频重定向”,设置为“已启用”,注销后再登录就OK了。 Win7或Win2008r2具体方法:开始>运行>gpedit.msc...

转:苹果手机同步阿里云邮箱日历

场景: 安装阿里云邮箱IOS客户端后,默认情况下通过苹果手机日历功能无法查看到阿里云邮箱日历 方法: 使用阿里云的CalDAV协议进行配置,即可拉取阿里云邮箱日历 步骤: 步骤一: 先进入手机端,设置邮件帐号的地方,直接添加以下协议, 以 苹果手机为例: 步骤二: 1:填写 服务器: caldav.mxhichina.com 2: 填邮箱账号 (带域名)...

“渴了么”软件需求规格说明书

“渴了么” 软件需求规格说明书 组员:陈志利 檀威 赵永恒 范德一 日期:2015年5月 目录 1 引言............................................................................................................................. 3...

关于使用BetterIntelliJ激活IntelliJ IDEA

第一步: 下载解压文件,把文件放到一个位置(尽量不要有中文路径),激活后,不要删除。 (具体如何下载BetterIntelliJ文件,百度查一下) 第二步: 安装软件后,打开软件,提示需要注册,勾选试用(Evaluate for free)选项,点击Evaluate进入IDE。 说明:如果不能出现这个界面,请打开reset_eval文件夹执行相应的重置脚...