



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章 基于 Java 语言的 Selenium 基础基于Java 语言的Selenium 环境搭建 一、安装 jre+eclipse,创建 Java 项目 安装 selenium:在 eclipse 中导入如下包selenium-java-3.9.1.zipselenium-server-standalone-3.9.1.jar准备浏览器驱动器无需安装,复制到某个位置(此位置需要写到代码中) IEDriverServer、chromedriver(google)、geckodriver(Firefox)webdriver.Ie()、.Chrome()、.Firefox()使用 Seleniu
2、m IDE断网安装 Firefox57 选择自定义安装(不要选择默认安装),取消勾选安装维护服务 安装完成后,工具选项常规firefox 更新:勾选“查更新”即可, 去掉勾选“自动更新搜索引擎” 联网安装 SeleniumIDE 设置附加组件扩展搜索 SeleniumIDE,然后安装 二、编写测试脚本1指定浏览器驱动,打开浏览器1.1 IESystem.setProperty(webdriver.ie.driver, C:.IEDriverServer.exe);WebDriver driver = new InternetExplorerDriver();1.2 Firefox需事先安装对应
3、驱动版本的浏览器System.setProperty(webdriver.gecko.driver, C:/geckodriver.exe); System.setProperty(webdriver.firefox.bin,E:/Mozilla Firefox/firefox.exe);WebDriver driver = new FirefoxDriver();1.3 GoogleSystem.setProperty(webdriver.chrome.driver, C:.chromedriver.exe);WebDriver driver = new ChromeDriver();2关闭
4、浏览器窗口driver.close();关闭页面driver.quit();关闭页面 关闭相关进程3设置等待时间操作太快容易导致对象控件不出现,从而失败。隐式等待 driver manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS); 隐式等待采用全部设置,所有的 findElement 方法都会隐式等待 1s 上述方法针对执行脚本的所有对象,等待 3 秒。 Thread.sleep(3000);/ms只需放在需要等待的位置。4打开网址driver.get(http:/localhost:1080/webtours);driver.get
5、Title()获得浏览器网页标题(字符串)5识别页面元素5.1 driver.findElement(By.属性)查询符合属性要求的第一个对象。 适用于文本框、属性 框、命令按钮、单选按钮。 name( 值 ) tagName(标签名) 标签即内的关键字。xpath(/标记名属性名=属性值) idclassName CSS class 属性的值 linkText 和之间的内容partialLinkText和之间的部分文本值5.2 driver.findElements(By.属性).get(下标)查询符合属性要求的所有对象; 适用于单选按钮、复选框、链接等。 使用 get(下标)可以选择某个,
6、从 0 开始。6操作页面元素的方法6.1 文本框+框+多行文本框 sendKeys(数据) clear()清空getAttribute(属性名)获取对应属性的属性值,如 valuegetText()获取文本值 可能获得不到数据6.2 单选按钮+复选框 click()单击/选中isSelected()是否选中6.3 下拉列表 new Select(driver findElement(B(select 控件名).selectByIndex(下标)根据下标选择某项,从 0 开始 selectByVisibleText(数据)根据列表框中显示的文本选择某项selectByValue(值)
7、根据值选择某项6.4 链接+命令按钮 click()单击7切换 frame 框架driver.switchTo().defaultContent();切回主文档 每次打开一个新网页时,应使用此句driver.switchTo().frame(1 或body);表示进入第 2 个 frame 或名为 body 的 frame如果 frame 中有 frameset,则需要层层切换 三、增强测试脚本1添加检查点Boolean res=driver.findElement(By.tagName(body).getText().conta(Welcome)返回 true 或 false。 检查时判断的
8、是前台文本。2参数化2.1 Java 读文件File file=new File(C:/./flights.txt); FileReader reader=new FileReader(file);BufferedReader buffer=new BufferedReader(reader); String row=null;while(row=buffer readLine()!=null) String columns=row.split(t); for(String x:columns)System.out.println(x);2.2 输入数据参数化 while(row=chars
9、readLine()!=null) String cols=row.split(t);new Select(driverfindElement(B(depart).selectByVisibleText(cols0);new Select(driver findElement(B(arrive).selectByVisibleText(cols1);使用循环直接实现局部迭代。2.3 检查点参数化 Boolean bookResult=driver.findElement(By.tagName(body).getText().conta(Flight 241 leaves +cols0+ for +cols1);3使用输出值3.1 输出实际结果 String flightNum=driver findElements(B(outboundFlight).get(1). getAttribute(value).substring(0, 3);System.out
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江万里学院《生态学研究案例》2023-2024学年第二学期期末试卷
- 益阳职业技术学院《水工结构》2023-2024学年第二学期期末试卷
- 郑州财经学院《中学教育学》2023-2024学年第二学期期末试卷
- 吉林农业科技学院《中学生品德发展与心理辅导》2023-2024学年第二学期期末试卷
- 郑州西亚斯学院《测绘管理与法规》2023-2024学年第二学期期末试卷
- 大连外国语大学《表面工程与增材制造》2023-2024学年第二学期期末试卷
- 上海财经大学浙江学院《音乐的故事》2023-2024学年第二学期期末试卷
- 塔里木大学《人类生存环境的现状与改善》2023-2024学年第二学期期末试卷
- 三农农业项目管理流程图
- 2025西安数据资产经营有限责任公司招聘笔试参考题库附带答案详解
- 造价咨询公司组织机构及人员岗位职责
- GB/T 700-2006碳素结构钢
- GB/T 25196-2018起重机设计工作周期的监控
- 机器人传感器课件
- 外国美术史第一讲-原始美术及古代两河流域美术课件
- 共有权人同意出租证明(房屋对外出租使用)
- 日本の節句日本的节日课件-高考日语文化常识专项
- 阿托伐他汀钙片说明书20110420(立普妥)
- 回旋钻钻孔施工方案
- 四年级上册第四单元让生活多一些绿色道德与法治教学反思11变废为宝有妙招
- JJG(交通)096-2009 水泥胶砂流动度测定仪检定规程-(高清现行)
评论
0/150
提交评论