UI自动化
1.webdriver的findElement方法可以查找页面某元素,通常使用方式是通过id和name进行查找
1.By ID根据id进行定位
WebElement element=driver.findElement(By.id("id_name"));
2.By Name根据name进行定位
WebElemnet element=driver.findElement(By.name("name"));
3.By Xpath根据xpath定位
WebElement element=driver.fingElement(By.xpath("//a[@di='id_name']"));
4.By Class Name 根据class名进行定位
WebElement element=driver.findElement(By.className("class_name"));
5.By Link Text 根据标签中的文本内容进行定位
WebElement element=driver.findElement(By.linkText("linkText"));
6.定位下拉选择框
Select select=new Select(driver.findElement(By.id("id_name")));
7,By cssSelector 根据属性来定位
WebElement element=driver.findElement(By.cssSelector("id=id_name"));

对找到的元素进行操作
1.输入框textarea
在输入框中输入内容: element.sendkeys("文本");
清空输入框: element.clear();
获取输入框中的文本内容:element.getText();

2.下拉选择框select
选择对应的选项: select.selectByValue("value");
select.selectVisibleText("value");

不选择对应选择: select.deselectAll()全不选择
select.deselectByValue("value");
select.deselectVisibleText("value");

获取选择项的值: select.getAllSelectedOptions();获取所有的选项值
select.getFristSelectedOption();获取第一个选项值

3.单选项 radio button和多选框 checkbox
找到单选框元素 WebElement redioButton=driver.findElement(By.id("id_name"));

选择某个单选框 redioButton.click();

清空某个单选项 redioButton.clear();

判断单选项是否被选择: redioButton.isSelected();

4.按钮 button
判断按钮是否可点击 element.isEnabled();

5.弹出对话框
Alert alert=driver.switchTo().alert();

确认: alert.accept();
取消: alert.dismiss();
获取alert文本: alert.getText();

6.windows和frames切换
切换至窗口A主框架: driver.switchTo.defaultContant();

从窗口A切换至新窗口B: driver.switchTo.window("B widowTitle");

从窗口切换frame(frame需逐级切换) driver.switchTo.frame("frame控件定位符");

7.导航 navigation
打开新页面 driver.navigate().to("https://www.baidu.com");

通过历史导航前进/后退 driver.navigate().forword();前进

driver.navigate().back();后退

selenium自动化一点记录的更多相关文章

  1. Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析

    加速IE浏览器自动化执行效率:Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析 1.技术背景       在Web应用中,用户通过键盘在输入框中输入值和鼠标点击按钮,链 ...

  2. Selenium2学习-032-WebUI自动化实战实例-030-JavaScript 在 Selenium 自动化中的应用实例之五(高亮标示元素)

    在自动化脚本编写过程中,操作元素之前,需要对元素进行高亮显示(通过修改元素的边框样式),同时进行截图,以记录操作的元素对象.在实际应用中较为少见,通常用于演示,或者发生错误时的屏幕截图捕捉,用于错误报 ...

  3. 利用Selenium自动化web测试

    简介: Selenium 是一个没有正式指导手册的开源项目,这让测试人员的问题调查很费时间.本文为基于 Selenium 1.0(发布于 2009 年 6 月)的测试期间的常见问题提供最佳实践. 简介 ...

  4. Selenium自动化脚本开发总结

    Selenium Selenium 是ThoughtWorks专门为Web应用程序编写的一个验收测试工具. Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE.Mo ...

  5. selenium自动化过程中如何操作Flash动画

    最近在看python的爬虫框架(scrapy),一个词概括就是:"酸爽"!等把selenium自动化版块讲完后,打算写一写关于scrapy相关的知识,打算从源码角度解析下scrap ...

  6. python+selenium自动化软件测试(第2章):WebDriver API

    2.1 操作元素基本方法 前言前面已经把环境搭建好了,从这篇开始,正式学习selenium的webdriver框架.我们平常说的 selenium自动化,其实它并不是类似于QTP之类的有GUI界面的可 ...

  7. Selenium自动化测试之结果处理

    Selenium自动化测试之结果处理 一.断言 断言相当于性能测试中的检查点,常用断言种类很多,具体可以查看断言API:判断预期结果和实际结果是否一致,断言成功,程序继续处理,失败则终止运行,示例如下 ...

  8. 2、大型项目的接口自动化实践记录--接口测试简介及RequestsLibrary关键字简介

    1.接口测试简介 1)先简单介绍下接口测试,那么什么是接口测试呢? 百科的回答:接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点. 看起来有 ...

  9. Python2.6.6执行selenium自动化

    系统类型: [root@bogon home]# uname -aLinux bogon 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 20 ...

随机推荐

  1. 再谈Spring Boot中的乱码和编码问题

    编码算不上一个大问题,即使你什么都不管,也有很大的可能你不会遇到任何问题,因为大部分框架都有默认的编码配置,有很多是UTF-8,那么遇到中文乱码的机会很低,所以很多人也忽视了. Spring系列产品大 ...

  2. MBTiles 离线地图演示 - 基于 Google Maps JavaScript API v3 + SQLite

    MBTiles 是一种地图瓦片存储的数据规范,它使用SQLite数据库,可大大提高海量地图瓦片的读取速度,比通过瓦片文件方式的读取要快很多,适用于Android.IPhone等智能手机的离线地图存储. ...

  3. 简单使用Spring Boot+JpaRepository+hibernate搭建项目

    sql: -- -------------------------------------------------------- -- 主机: 127.0.0.1 -- 服务器版本: 10.3.9-M ...

  4. UCOS阅读问题累积

    1.#ifdef __cplusplus   extern "C" {  #endif 作用: 一般用于将C++代码以标准C形式输出(即以C的形式被调用),这是因为C++虽然常被认 ...

  5. 【浏览器-Safari-网页开发指南】官方Sarari开发指南译文

    Safari是一个功能比较完整的浏览器.它支持所有按照W3C标准HTML,CSS,Javascript开发的网页. 当然,让网站正常访问只是我们的初级目标.开发者应该致力于给用户提供更好的用户体验.比 ...

  6. WebPack系列之Proxy

    背景 当我们直接去访问https://m.weibo.cn/api/config/list时由于端口.域名的不同产生了跨域,无法请求到资源数据. 分析 WebPack中devServer的proxy代 ...

  7. 断言assert()与调试帮助

    列表内容assert()是一种预处理宏(preprocessor marco),使用一个表达式来作为条件,只在DEBUG模式下才有用. assert(expr); 对expr求值,如果expr为假,则 ...

  8. getline的字符串读入

    也许是最近模拟题打多了的缘故,我发现自己渐渐变得比较毒瘤起来,当然这也是有一定的好处的,因为从中我也学到了一些处理字符串的正确姿势,今天我们就来讲一 讲如何用函数getline来读入一整行字符串进行处 ...

  9. Spring的入门学习笔记 (注解)

    Spring的bean管理(注解) 注解 1.代码里面特殊标记(ep:@Test),使用注解完成一些相关功能 2.注解写法 @注解名称(属性名称=属性值) 3.可以用在类,方法,属性上都可以 4.Sp ...

  10. MySQL数据库 : 基本语句

    mysql -uroot -p 登陆数据库 select now(); 显示当前时间 \q 退出 show databases; 显示数据库 create database 数据库名 charset= ...