Selenium API 介绍

我们先前学习过元素定位,大家不知道学习得怎么样了,当你学会元素定位之后就能够跟着我的脚步学习本节Selenium 经常使用的API  介绍

Seleium 为什么能模拟人的形为进行机器化操作,主要是由于Selenium jar  提供了对页面元素进行输入,点击。选择,取消。获取等功能

如今我来介绍以上几个经常使用的API  

 我们要訪问网页一開始是要做什么呢,对了,是要打开浏览器,那在Selenium 中是怎样打开浏览器的呢,还有那么多浏览器究竟打开哪一款呢

来看代码

我们先来看最简单的一种

Public  static void openBrowser() {

WebDriverdriver=new FireFoxDriver();

}

执行之后我们发现火狐的浏览器已打开了

这样的情况仅仅适用于火狐默认安装的情况,那假设火狐在安装时是自己定义安装路径的话代码要怎样写呢

那我们的代码中就要添加浏览器的安装路径了

代码例如以下

那假设是其他谷哥,IE 浏览器要怎样操作呢

操作方式同设定火狐路径一样

仅仅是要分别下载相应的驱动

比方你是要打开IE

你就用这个代码

System.setProperty("webdriver.ie.driver", "D:\\selenium\\selenium\\Tools\\IEDriver.exe");

WebDriver driver = new InternetExplorerDriver();

谷哥的也一样操作。这里就不反复

当浏览器打开之后我们要做的是就是输入网址

输入网址我们用下面代码

Driver.get(“https://www.baidu.com/”)

第三个API 输入框

操作方式是先定位到相应的输入框,之后再用SendKey,将你须要输入字符输入到指定框框内

我们来看怎样对百度输入框输入一个字符

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

执行之后例如以下图

假设输入框默认就有值。再输入就可能导致输入的值是接在默认值的后面,为了避免这个问題我们能够将代码再优化下,在输入之前先清空

调用clean() 方法

第四个方法点击

我们在百度输入了查询条件。那是不是要去点击百度一下呢

点击一下的操作也是先要定位到这个元素。之后调用Click () 方法

第五种 选择框操作

可能大家网上去搜时发现有以下这样的方法

Select select = new Select(driver.findElement(By.id(“select”)));
select.selectByVisibleText(“testName”);
 
select.selectByValue(“name”);
 

但就是在你自已的系统中一直Select 没作用。这个主要原因是如今好多公司将Select 单独再封装了一次。

假如你用FireBug 定位时你本身定位的是一个Select 但高亮块时显示的标签名是什么

Div input td 之类的那就说明你不能用上面的方法

你得模拟鼠标一个个值去点击

第一步先让下拉选项展开

第二步再定位到相应要选择的值进行点击,这样的对下拉项值非常多的情况不适用

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

第六种单选/复选框

对单选/复选框操作就用点击操作即可,点击之后去获取相应属性推断是否有选中,没有选中就再选一次即可了

第七种  获取输入框或是单选框/复选框属性

有时我们可能要对某个输入框进行确认,确认他的值与预期值是否同样。这时我们就要用于属性获取方法

如今我们做下面測试

先进入百度。之后在输入框输一个字符。再去获取它的值

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

有时我们在登录时可能会出现你要鼠标先移到个位置停留下,或是在某个位置要去点右键的操作呢

我们以百度设置为例

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

Selenium API 介绍的更多相关文章

  1. robotframework - selenium Api介绍

    一.介绍下selenium常用的api *** Settings ***Library SeleniumLibraryResource baidu业务.txtResource UI分层.txt *** ...

  2. Selenium2+python自动化27-查看selenium API

    前言 前面都是点点滴滴的介绍selenium的一些api使用方法,那么selenium的api到底有多少呢?本篇就叫大家如何去查看selenium api,不求人,无需伸手找人要,在自己电脑就有. p ...

  3. Selenium2+python自动化-查看selenium API

    前面都是点点滴滴的介绍selenium的一些api使用方法,那么selenium的api到底有多少呢?本篇就叫大家如何去查看selenium api,不求人,无需伸手找人要,在自己电脑就有. pydo ...

  4. python selenium自动化测试之路(1)--分层测试概念、selenium工具介绍

    1.分层自动化测试概念 传统的自动化市场更关注产品UI层的自动化测试,而分层的自动化测试倡导产品开发的不同阶段都需要自动化测试 大多公司与研发团队其实是忽略了单元测试与集成测试阶段的自动化测试工作,所 ...

  5. Selenium2+python自动化27-查看selenium API【转载】

    前言 前面都是点点滴滴的介绍selenium的一些api使用方法,那么selenium的api到底有多少呢?本篇就叫大家如何去查看selenium api,不求人,无需伸手找人要,在自己电脑就有. p ...

  6. 常用ArcGIS for Silverlight 开发API介绍

    1.API介绍 2.Map对象  3.Layer对象 4.Symbol对象 5.Task对象

  7. Servlet基础(一) Servlet简介 关键API介绍及结合源码讲解

    Servlet基础(一) Servlet基础和关键的API介绍 Servlet简介 Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中. Servlet容器负责Servl ...

  8. Robot Framework自动化测试(三)---Selenium API

    Robot  Framework  Selenium  API 说明: 此文档只是将最常用的UI 操作列出.更多方法请查找selenium 关键字库. 一.浏览器驱动 通过不同的浏览器执行脚本. Op ...

  9. python学习笔记(win32print API介绍)

    最近博主在研究用python控制打印机 这里整理下win32print的API介绍,官网地址http://timgolden.me.uk/pywin32-docs/win32print.html Op ...

随机推荐

  1. JavaScript 函数 伪数组 arguments

    一.函数 函数:函数就是将一些语言进行封装,然后通过调用的形式,执行这些语句. 函数的作用: 1.将大量重复的语句写在函数里,以后需要这些语句的时候,可以直接调用函数,避免重复劳动 2.简化编程,让变 ...

  2. C - Crazy Town

    Problem description Crazy Town is a plane on which there are n infinite line roads. Each road is def ...

  3. Spring Cloud (2) 服务消费者-基础

    LoadBalancerClient 使用Spring Cloud提供的负载均衡器客户端来实现服务的消费. 首先创建一个服务消费者工程,命名为com.david.consumer,并在pom.xml中 ...

  4. struts2标签(五)

    标签体系结构 jsp出现目的是为了取代servlet,结果逻辑代码,数据库代码都放到了jsp页面中. 为了解决jsp中代码过多的问题,struts2标签分为普通标签和UI标签. 使用struts2标签 ...

  5. SQLServer2008 将“单个用户”改为“多用户”

    一开始是要想要分离掉数据库,然后将其删除 不知道为什么一直分离不了,试了很多次,又尝试直接删除 结果数据库突然显示成了“单个用户” 尝试查看其属性,或者“新建查询”也都报错,提示已经有其他用户建立了连 ...

  6. bootstrap的栅格系统和响应式工具

    关于bootstrap的响应式布局,昨天看了杨老师的视频教学https://www.bilibili.com/video/av18357039豁然开朗,在这里记录一下 一:meta标签的引用 < ...

  7. hibernate_07_单表操作_增删改操作

    首先,创建类对象 package com.imooc.hibernate; public class Address { private String postcode; //邮编 private S ...

  8. 三维重建面试4:Jacobian矩阵和Hessian矩阵

    在使用BA平差之前,对每一个观测方程,得到一个代价函数.对多个路标,会产生一个多个代价函数的和的形式,对这个和进行最小二乘法进行求解,使用优化方法.相当于同时对相机位姿和路标进行调整,这就是所谓的BA ...

  9. mount 命令总结

    配置CnetOS 7.4 本地yum源,记录下遇到的ISO镜像挂载问题,使用 blkid 命令可以查看设备的UUID.Label.文件系统类型(iso镜像文件系统类型iso9660) [root@lo ...

  10. Apache2.2 启动和停止命令

    1.启动:net start apache2.2 2.停止:net stop apache2.2