Selenium的界面

白色:还未执行

浅青色:动作成功

深青色:判断成功

浅粉红色:判断失败,但不影响测试案例的运行

深粉红色:判断失败,且测试案例无法正常运行

Command 存在的命令

Action

命令

接口

备注

Open

open(url)

在浏览器中打开URL

Click

click(elementLocator)

点击链接、按钮、复选框、单选框

Type

type(inputLocator, value)

往input中输入值,也适合给复选和单选框赋值

Select

select(dropDownLocator, optionSpecifier)

选择下拉菜单选项

goBack

goBack()

点击浏览器后退按钮

close

close()

点击浏览器关闭按钮

SelectWindow

selectWindow(windowId)

选择一个弹出窗口,所有命令都会转到那个窗口执行

pause

pause(millisenconds)

根据指定时间暂停脚本的执行

fireEvent

fireEvent(elementLocatore,evenName)

模拟页面元素事件被激活的处理过程

waitForCondition

waitForCondition(JavaScriptSnippet,time)

在规定的时间内,等待一段javascript代码返回true值,超时则停止等待

waitForValue

waitForValue(inputLocator, value)

等待input被赋予某值

Store

store(valueToStore, variablename)

保存一个值到变量里

storeText

storeText(elementLocator, variablename)

把指定元素的文本值赋给变量

storeAttribute

storeAttribute(.{ }elementLocator@attributeName,variableName.{  })

将指定元素的属性值赋给变量

chooseCancelOnNextConfirmation

chooseCancelOnNextConfirmation()

如果弹出确认对话框,脚本选择Cancel,没有此命令,脚本默认选择OK

answerOnNextPrompt(answerString)

answerOnNextPrompt(answerString)

在下次JavaScript 弹出prompt 提示框时,赋予其anweerString 的值,并选择确定

Assertions

存在assert和verify两种模式,assert失败,则退出测试,verify失败,测试会继续运行。

命令

接口

备注

assertLocation

assertLocation(relativeLocation)

判断当前是在正确页面

assertTitle

assertTitle(titlePattern)

检查当前页面的title是否正确

assertValue

assertValue(inputLocator, valuePattern)

检查Input的值是否正确

assertSelected

assertSelected(selectLocator, optionSpecifier)

检查select下拉框的选项是否和assertSelected一致

assertSelectOptions

assertSelectOptions(selectLocator, optionLabelList)

检查select下拉框的选项是否和optionLabelList一致

assertText

assertText(elementLocator,textPattern)

检查指定元素的文本

assertTextPresent

assertTextPresent(text)

检查当前显示的页面上是否出现指定的文本

assertTextNotPresent

assertTextNotPresent(text)

检查当前显示的页面上是否没有出现指定的文本

assertElementPresent

assertElementPresent(elementLocator)

检查当前显示的页面上是否没有出现指定的文本

assertAttribute

assertAttribute.{ }elementLocator@attributeName.{}, ValuePattern)

检查指定元素的属性值

assertVisible

assertVisible(elementLocator)

检查指定的元素是否可视

assertNotVisible

assertNotVisible(elementLocator)

检查指定的元素不可视

assertEditable

assertEditable(inputLocator)

检查指定的input是否可以编辑

assertNotEditable

assertNotEditable(inputLocator)

检查指定的input是否不可以编辑

assertAlert

assertAlert(messagePattern)

检查是否弹出带指定message的alert对话框

assertConfirmation

assertConfirmation(messagePattern)

检查是否弹出带指定message的Confirmation对话框

assertPrompt

assertPrompt(messagePattern)

检查是否弹出带指定message的Prompt对话框

如何获取Target

Id定位

Id=loginForm 定位页面元素Form

Name定位

Name=continue value=Login

Identifier定位

当不能识别为其他的定位方式后,默认情况下为identifier的定位方式

Identifier=username

Xpath定位

Xpath是xml的查询语言,html可以认为是xml的一种实现。使用xpath定位的原因是,你可能没有合适的id和name特性来定位元素。通过xpath,你可以使用绝对地址(不推荐)或者相对地址来定位元素。

Xpath的开头是一个斜线(/)代表这是绝对路径,绝对路径是从html开始的。开头是2个斜线(//)代表这是相对路径。

Xpath=/html/body/form[1]   获取表格,xpath没有0的下标

//form[1](3)   html中的第3个form元素

Xpath=//form[@id=’loginForm’]   id为’loginForm’的元素

Xpath=//form[input^@name=’username’]   定位form,且它有name为’username’的input子元素

Xpath=//input[@name=’username’]   input元素且name为‘username’

Xpath=//input[@name=’continue’][@type=’button’]

链接文字定位

通过链接文字来定位超链接

Link=Continue   定位页面元素连接文字为Continue

DOM定位(暂时不懂)

Css定位(暂时不懂)

selenium 基本了解的更多相关文章

  1. Python爬虫小白入门(四)PhatomJS+Selenium第一篇

    一.前言 在上一篇博文中,我们的爬虫面临着一个问题,在爬取Unsplash网站的时候,由于网站是下拉刷新,并没有分页.所以不能够通过页码获取页面的url来分别发送网络请求.我也尝试了其他方式,比如下拉 ...

  2. Selenium的PO模式(Page Object Model)[python版]

     Page Object Model 简称POM  普通的测试用例代码: .... #测试用例 def test_login_mail(self): driver = self.driver driv ...

  3. selenium元素定位篇

    Selenium webdriver是完全模拟用户在对浏览器进行操作,所有用户都是在页面进行的单击.双击.输入.滚动等操作,而webdriver也是一样,所以需要我们指定元素让webdriver进行单 ...

  4. selenium自动化基础知识

    什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...

  5. 幼儿园的 selenium

    from selenium import webdriver     *固定开头     b=webdriver.Firefox()              *打开火狐浏览器    browser. ...

  6. 使用selenium编写脚本常见问题(一)

    前提:我用selenium IDE录制脚本,我用java写的脚本,如果大家想看的清楚明白推荐java/Junit4/Webdriver 我用的是java/TestNG/remote control 1 ...

  7. 关于selenium RC的脚本开发

    第一.需要录制脚本,找个我也不说了.就是在firefox下下载一个selenium-IDE并且安装. 第二.在工具里找到selenium-IDE点击运行. 第三.默认是红色按钮点击状态的,接下来随便你 ...

  8. 基于python的selenium自动化测试环境安装

    1. Python2安装 官方网站:https://www.python.org/downloads/ (python3或新版本已经默认集成了pip包和path,安装的时候打勾就行,可以直接跳过下面第 ...

  9. Selenium+python 配置

    1. 安装python, www.python.org. 下载最新的python,应该是32位的.注意配置环境变量. 2. 安装PIP(pip是一个以Python计算机程序语言写成的软件包管理系统). ...

  10. selenium 使用action进行鼠标,键盘操作

    <!--test.html--> <html> <head> <title>Set Timeout</title> <script&g ...

随机推荐

  1. gnuplotx轴的logscale显示

    假设数据是这样子的: gnuplot脚本如下: set terminal postscript eps color enhanced set log x set log y set format x ...

  2. NBUT 1602 Mod Three(线段树单点更新区间查询)

    [1602] Mod Three 时间限制: 5000 ms 内存限制: 65535 K 问题描述 Please help me to solve this problem, if so, Liang ...

  3. linux redis迁移

    在原服务器上的redis执行save命令后,生成了dump文件,拷贝到新服务器的安装目录,可能是版本问题,数据无法还原. 针对这个问题, 1.在配置文件中加入: slave of 原服务器的ip和端口 ...

  4. DS实验题 地鼠安家

    ★实验任务 fd是一个公认的美丽校园.一天,fd来了一群地鼠,编号为1到n,他们希望在这里定居.现在先由第一只地鼠往下打一个单位的距离,并且在那里安家.对于每一个已经安家的地鼠,如果他左下或右下没有邻 ...

  5. jedis操作

    Jedis jedis = RedisUtil.getJedis(); try { // 向key-->name中放入了value-->minxr jedis.set("name ...

  6. centos7 安装mysql5.7及配置

    一.Mysql 各个版本区别:1.MySQL Community Server 社区版本,开源免费,但不提供官方技术支持.2.MySQL Enterprise Edition 企业版本,需付费,可以试 ...

  7. linux 常用的基本命令

    $ ls # 查看文件列表 $ ls dir_name | more : 分页查看文件列表 $ ll -h dir_name # 以 KB.MB.GB格式查看文件大小 $ ll -Sh  # --so ...

  8. ThinkPHP的cookide保存二维数组的方法

    ThinkPHP中的cookie是不支持二维数组的. 如果要保存二维数组.只能特殊处理 $data[263] = array('gid'=>263,'num'=>1); $data[266 ...

  9. Bootstrap页面布局18 - BS导航路径以及分页器

    导航路径:又叫“面包屑”,功能是让用户知道所处的位置. <!--面包屑--> <ul class='breadcrumb'> <li><a href='#'& ...

  10. 8 个最佳 PHP 库

    PHP标准库 (SPL)的目的就是提供一组接口,让开发者在PHP5中充分利用面向对象编程.因此本文我们搜集了8个最好的,能辅助开发者简化他们的工作,为他们的开发任务服务的PHP库. 如果你喜欢本文,也 ...