seleniumide工具总结.docx
- 文档编号:8727255
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:5
- 大小:17.64KB
seleniumide工具总结.docx
《seleniumide工具总结.docx》由会员分享,可在线阅读,更多相关《seleniumide工具总结.docx(5页珍藏版)》请在冰豆网上搜索。
seleniumide工具总结
SeleniumIDE工具总结
基本介绍:
Selenium工具专门为WEB应用程序编写的一个验收测试工具。
Selenium的核心:
browserbot,是用JAVASCRIPT编写的。
Selenium工具有4种:
SeleniumIDE,SeleniumControl,SeleniumCore
这儿我们主要总结了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]在setUp()函数中添加语句:
每次脚本运行,都将清空数据库的语句
`/home/www/selenium-php/yuezhan/`;注意:
用倒斜杠,数字1左边的键
将默认的浏览器代码修改:
将$this->setBrowser("*chrome");
改成$this->setBrowser("*firefox");
可以不用修改代码的方法:
Selenium工具OptionsOptions选择Formats选项卡
选择PHP-PHPUNIT将Environment里的浏览器改成firefox即可,
这样子录制的脚本转化成PHP后,也就不用修改此部分代码了。
3.在第2点的基础上,在上面添加两句代码:
$this->setHost("");
$this->setPort(4445);录制的脚本中如有上传图片的路径。
也要根据服务器所在的环境作修改。
如在同一环境下可不作修改。
不在同一环境下,要将图片路径修改成服务器环境中图片所在的路径下。
5.录制的脚本一定要从登录开始录制。
在没有解决COOIKE之前,必须这么做。
运行脚本时,
常见问题1:
报错:
ERROR:
TherewasanunexpectedAlert!
[ajax错误].
错误原因:
AJAX错误,没有找到ALERT提示的框架,因而报异常错误
解决方法一:
$this->click("css=input[type=submit]");这是一个“下一步”按钮。
进入的页面中,有AJAX。
可以此句前面添加:
setSpeed(1000)让其执行速度变慢1秒。
具体php代码:
$this->setSpeed("1000")elf:
:
$YZLoginCookie,"path=/");self:
:
$YZLoginCookie=$this->getCookieByName("symfony");
Symfony这个参数是SESSION名。
getCookieByName这是一个取得Cookie值的方法。
并将取的到值放到YZLoginCookie变量中。
因为YZLoginCookie变量是私有的。
在PHPUNIT中,私有变量的引用就这么写:
self:
:
$变量名
这个我们不要太懂。
就记住,定义变量时用的是private,那么用这个变量时,前面加
Self:
:
(注意:
这儿的两个冒号,必须是半角状态下的冒号)就可以了。
2.$this->createCookie("symfony=".self:
:
$YZLoginCookie,"path=/");
createCookie()这个就是创建Cookie的方法
它的参数是刚刚self:
:
$YZLoginCookie变量中的值。
将其创建好的Cookie存放到path=/这个路径下
常见问题6:
运行PHPUNIT代码时报类似如下错:
Failedassertingthat false>istrue. 错误原因: 此处错误存在于断言检查中。 检查出来返回的值是失败的。 解决方法: 1.检查断言语句是没有放错位置。 应将语句放置要检查代码的上一行 2.主要检查引号中里面的语句有无错误。 比如: $this->waitForElementPresent("必须填写"); 这里面与页面中有出入。 应为 $this->waitForElementPresent("必需填写"); 再比如: $this->waitForElementPresent("css=input[typ=button"); 这里应该为: $this->waitForElementPresent("css=input[type=button]"); 少了右边的中括号,还有type的e 先看有没有少写了括号或中括号;再来检查单词有无编写错误。 以及有无错别字的错误。 常见问题7: 运行PHPUNIT代码时报类似如下错: Parseerror: syntaxerror,unexpectedT_IFin/home/www/selenium-php/online44 错误原因: 第44行。 提示有代码错误。 解决方法: 检查第44行以及44附近的行。 先看有没有少写了分号;然后看编写或复制代码时,有无加了代码行的编号(即代码前的数字);最后检查单词有无编写错误。 常见问题8: 运行PHPUNIT代码时报类似如下错: PHPUnit_Framework_Exception: ResponsefromSeleniumRCserverfortestComplete(). ERROR: Therewerenoalerts. 错误原因: PHPUNIT中框架异常出错。 它找的错误原因,没有Alert。 这里alert是一个提示信息,一般出现在当前窗体中以弹层方式显示的确认对话框。 解决方法: 在确认对话框提示代码的上一行,添加一段等待审核提示信息即可。 方法一、可以直接在selenium中,在弹出提示框代码的上一行。 例如录制脚本: ComandTargetValue open/om_match clicklink=招募 ……………… clickcss=input[type=button] waitForAlertPresentprotected$coverageScriptUrl=''; 定义一个受保护的变量,变量名为coverageScriptUrl, 用以存放代码测试的接口路径, 2.$this->open("/PHPUNIT_SELENIUM_TEST_ID=yz"); 此句含义为: 打开测试路径。 PHPUNIT_SELENIUM_TEST_ID=yz即时识别哪个项目的ID,后面yz可省略不写,此处可为空。 yz即约战,有便于识别哪个项目。 如何操作 和平时运行phpunit用例脚本一样。 原本我们执行: phpunit 现在这么执行: phpunit53--coverage-htmlllcov 其中: phpunit53为版本号,这儿用的是.版本,就这么写吧。 --coverage-html为生成代码覆盖报告的命令开关 llcov为存放报告文件的文件夹名 为执行的用例脚本名称 如何查看代码测试的代码覆盖报告 直接地址栏输入访问地址, 地址的构成: 40环境下访问地址+存放生成文件的文件夹名+ 则输入地址: (备注: 为40环境下的访问地址, 这需要系统部部署好测试环境) 如有其他学习中遇到问题,如何解决,有待我们继续更新…… 2011.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- seleniumide 工具 总结