Selenium笔记(上篇)-新闻详情

Selenium笔记(上篇)


发布时间:2017-01-24责任编辑:朱明 浏览:1490



1.       优点:开源、速度快、效率高、成本低、准确性高, 支持多种语言(C#JAVAPythonJS等)、孪生兄弟appium可以做手机测试

2.       缺点:不能一劳永逸(程序发生变化,测试脚本需要随之改变)、风险比较高(也要写代码,也要维护脚本)、验证比较麻烦、没有人的直觉(比如一个按钮在哪),只适合测试web平台,不能测试window项目

3.       适合的场合:回归测试(测试的重复)、验收测试、通过性测试、集成测试、冒烟测试

4.       组合套装:firefoxfirefox bugger插件selenium ide插件vimperator

5.       自动化测试主要是GUI(基于Windows的应用)TUI(基于手机的APP应用)WUI(基于Web的应用)三种类型的应用进行测试。

6.       自动化测试步骤,缺一不可(SE制作全流程):

1)  准备:产品功能的梳理、测试用例的设计、手工执行测试用例

2)  制作:录制脚本、编辑脚本、调试脚本

3)  运行:运行脚本、检查运行日志

7.       Selenium全家福:selenium ideselenium gridselenium rcselenium webdriver

8.       环境搭建需要注意的问题:

selenium笔记1.png

需要改成0

9.       测试套件:多个测试案例,要保存测试套件需要先保存测试案例。

10.   制作测试案例:

1)  录制:测试案例的制作最简单的是录制,但是录制不能解决所有的问题,比如以下情况:

a)  有些操作不被录制,(富文本框输入文字时,se支持的不是很好,不会被录制)

b)  有些操作录制不正确(操作录制很正常,但是回放的时候会报错)

c)  越是优秀的网站越容易录制

2)  添加断言和验证:录制过程中或录制完成可以添加断言和验证,

a)       断言失败,测试会终止

b)       验证失败,测试会继续

3)  编辑:其中包括:

a)  命令三个参数:command,target,value

b)  添加命令

c)  添加注释

d)  表格试图

e)  原始图

11.   测试案例过程中的使用技巧

1)  执行一个案例的时候,如果想暂停在某个页面对某个页面添加验证,选中一个命令行,右键鼠标,选择”ToggleBreakpoint”执行暂停操作即可,如果继续执行下面的页面的验证可以手动操作。

2)  如果要增加一段文字的验证,鼠标停留在要验证的文字上面,右键->可以找到对应文字的验证命令

 

 

 

 

Selenium中篇(指令篇)

 

 

1.       常用命令

 

命令

作用

使用方式

echo

一般用于调试,打印常量或变量

store(2,num_1) 

echo ${num_1}

highlight

一般用于调试,高亮显示页面上的哪个元素


open

打开一个链接


click

单击页面上的一个元素


verifyTitle

得到当前被测页面的标题


verifyText

得到当前被测元素的文本内容


verifyElementPresent

验证这个页面上是否有目标元素出现


 

2.       Selenese命令分类

 

selenium笔记2.png

 

3.       Locator元素定位,identifierid,name)、idnamexpathdomlinktextcss7种定位方式

Locator基本语法:type(以上其中定位类型)=value(相关元素对应的值)

1)       identifieridnamelinktext四种简单定位方式

name定位时如果存在多个相同name的元素,只定位第一个元素,可以加过滤器进行过滤。比如name=btn value=save

2)       css定位

标记和ID选择器:css=tag#id(tag表示元素标记比如form,input)

标记和类选择器:css=tag.classname(classname表示样式名字)

标记和属性选择器:css=tag[attribute](attribute表示元素的属性)

标记和类、属性选择器:css=tag.classname[attribute]()

标记和内部文本选择器:css=tag:contains(“innerText”)

3)       xpath定位

http://www.w3school.com.cn/xpath/index.asp

4)       dom定位

dom=document.getElementyById()

dom=document.getElementyByName()

dom=document.forms[index|name]

dom=document.forms[“form”].name|document.forms[“form”].elements[index|name]

 

总结

 

Selenium web IDE 只能使用对web项目进行简单的 功能测试,而且仅支持firefox浏览器,无法实现复杂的测试功能。如果实现复杂的测试工作可以使用selenium WebDriver,但Selenium WebDriver需要手动编写测试脚本,没有开发经验的测试人员是无法实现的,而且编写脚本的过程类似编写一个小项目的过程,同样需要对自动化脚本进行测试、修改,最终个人认为有些项目不适合做复杂的自动化测试,可以考虑selenium进行简单的页面功能测试。




敬业工作室   供稿