




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
自动化基础知识什么是功能自动化测试?一般是指软件测试的自动化。自动化测试可理解为测试过程自动化和测试结果分析自动化,包括测试活动的管理与实施、测试脚本的开发与执行。软件自动化测试模拟手动测试步骤,控制被测软件的执行,完成全自动或半自动测试的过程。全自动测试:指不需人工干预,由程序自动完成测试的全过程。半自动测试:指在测试过程中,需手动输入测试用例或选择测试路径,再由自动测试程序按照人工指定的要求完成自动测试。为什么需要功能自动化测试?删除功能手动测试自动化测试为什么需要功能自动化测试?注意:自动化测试虽然具有很多优点,但它只是测试工作的一部分,是对手工测试的一种补充。功能自动化测试前提条件如何实现功能自动化测试?开源框架Selenium2.0(WebDriver)、Watir等商业工具QTP、RationalRobot、SilkTest等开源框架与商业工具比较开源(如Selenium2.0)商业(如QTP)开源功能自动化框架比较WatirWebDriverWatirWebDriver是SeleniumWebDriver的一个封装,使得SeleniumWebDriver的API更加友好,同时使用了Watir的API组织形式,使得代码更简洁和优雅。WatirWebDriver当然,我们可以通过以下链接,非常方便的获取到WatirWebDriver的API进行阅读。/gems/watir-webdriver常用API介绍Browser初始化浏览器browser=Watir::Browser.new:ie#其中,“:ie”表示IE浏览器,其他浏览器例如:“:chrome”,“:firefox”访问站点browser.goto“url”关闭浏览器browser.closeButton按钮单击browser.button(:id=>“btn”).click按钮双击browser.button(:id=>“btn”).double_click按钮是否存在browser.button(:id=>“btn”).exists?#一般用于测试结果断言
CheckBox复选框勾选browser.checkbox(:id=>“cbx”).set复选框取消勾选browser.checkbox(:id=>“cbx”).clear复选框是否勾选browser.checkbox(:id=>“cbx”).set?#一般用于测试结果断言复选框是否存在browser.checkbox(:id=>“cbx”).exists?
TextField文本框设置值browser.text_field(:id=>“txt”).set“value”#文本框自动清空,全量输入文本框输入值browser.text_field(:id=>“txt”).send_keys“value”#文本框不清空,增量输入是否存在browser.text_field(:id=>“txt”).exists?
#一般用于测试结果断言
SelectList下拉框根据值选择browser.select_list(:id=>sel”).select“value”下拉框是否存在browser.select_list(:id=>“sel”).exists?#一般用于测试结果断言
Radio单选框勾选browser.radio(:id=>“ra”).set单选框是否勾选browser.radio(:id=>“ra”).set?#一般用于测试结果断言是否存在browser.radio(:id=>“ra”).exists?#一般用于测试结果断言
Link超链接单击browser.link(:id=>“lnk”).click超链接双击browser.link(:id=>“lnk”).double_click是否存在browser.link(:id=>“lnk”).exists?#一般用于测试结果断言
如何定位元素?如何定位元素使用id定位HTML代码:<inputtype="text"
class=“css"
id=“txtBox1"
name="usertxtBox"
>Ruby代码:browser.text_field(:id=>“txtBox1”).set“user”
如何定位元素Page21使用name定位HTML代码:<inputtype="text"
class=“css"
id=“txtBox1"
name="usertxtBox"
>Ruby代码:browser.text_field(:name=>“usertxtBox”).set“user”
如何定位元素使用class定位HTML代码:<inputtype="text"
class=“css"
id=“txtBox1"
name="usertxtBox"
>Ruby代码:browser.text_field(:class=>“css”).set“user”
如何定位元素Page23使用xPath定位HTML代码:<inputtype="text"
class=“css"
id=“txtBox1"
name="usertxtBox"
>Ruby代码:browser.text_field(:xpath=>“//*[@id=‘txtBox1’]”).set“user”
如何定位元素使用多种方式相结合定位HTML代码:<div><inputtype="text"
name="usertxtBox"
><inputtype="text"
name="usertxtBox"
></div>Ruby代码:browser.text_field(:name=>“usertxtBox”,:index=>0).set“user”
如何定位元素使用层级关系定位HTML代码:<divid=“kw”><inputtype="text"
name="usertxtBox"
></div>Ruby代码:browser.div(:id=>“kw”).text_field(:name=>“usertxtBox”).set“user”
如何处理FrameFrame有时定位了元素后,在运行程序时仍会提示我们找不到该元素。这时,很大的可能是该元素外部包围了frame。我们可以通过下列方式定位Frame中的元素:HTML代码:<iframename=“mainFrame”>……<inputtype="text"
name="usertxtBox"
></iframe>Ruby代码:browser.frame(:name=>“mainFrame”).text_field(:name=>“usertxtBox”).set“user”如何处理弹出的新浏览器通过title定位browser.window(:title=>"annoyingpopup").usedo
browser.button(:id=>"close").clickend获取最后一个窗口browser.windows.last.usedo
browser.button(:id=>"close").clickend
如何处理JS弹出窗口Alert处理browser.alert
do
browser.button(:value
=>
'Alert').click
endConfirm处理browser.confirm(true)
do
browser.button(:value
=>
'Confirm').click
end
断言断言在Ruby1.9以上版本中,内置了MiniTest库,主要用于单元测试,我们需要用它来进行TestCase生命周期的管理和结果的断言。断言MiniTest::Unit::TestCase类TestCase类提供了许多方法,我们一般会继承该类,并重写其中3个方法来搭建起一个测试用例,包括前置条件、操作步骤、预期结果、后置操作。而在操作步骤中,利用WatirWebDriver提供的一系列方法模拟用户操作。断言MiniTest::Assertions类Assertions类中包含了许多断言方法,具体可查看以下文档
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教育行业劳动合同范文
- 合作发展合同-股本借款标准范本
- 租赁合同纠纷调解协议书范本
- 10-1《兰亭集序》教学设计 2023-2024学年统编版高中语文选择性必修下册
- 10 吃饭有讲究 教学设计-2024-2025学年道德与法治一年级上册统编版
- 长期借款合同参考模板
- 贷款合同范本:全新标准版
- 环保治理工程承包合同范文
- 生产订购合同范本
- 餐饮直营协议合同范本
- 课题申报书:“四新”视域下地方高校学科建设与人才培养研究
- 企业员工退休管理规章制度(3篇)
- 小学生情绪调适课件
- 2025年华润电力招聘笔试参考题库含答案解析
- 建筑行业材料供应应急预案
- 电焊工安全培训(超详)课件
- 2025蛇年中小学春节寒假安全教育课件模板
- 康复护士讲课课件
- 2024年学校科研工作计划(6篇)
- 如何做好4S管理
- 民航客舱应急设备
评论
0/150
提交评论