自动化测试概念
- 关于上次来讲自动化包括一切通过工具程序的方式来代替或辅助手工测试的行为,都可以看看做自动化。狭义上来讲,通过工具记录和编写脚本的方式,模拟手工测试的过程,通过回放和或运行脚本来执行测试用例,从而代替人工对系统的功能进行验证。
考虑产品适合做自动化测试的因素
- 软件需求变动不频繁
- 项目周期较长,
- 自动化测试脚本可重复使用。
自动化测试理念工具选择
- 所测测试的产品是桌面程序 CS还是wap应用BS?
- 桌面程序的工具有QTP,autorunner
- Wap应用的工具有selenium,QTP Robot framework.
语言的选择
- 语言易学性首选Python和ruby
- 语言应用广度首选java C#,PHP
- 语言相关测试技术程度,ruby peasant Java.
自动化原理
- 自动化程序,它下发的命令是会发送到驱动——浏览器。
- 这些命令是点击操作等。
- 那么这些命令是怎样传递给浏览器驱动程序的呢?是通过selenium的库。
为什么我们自动化程序不直接发送命令给浏览器?为什么要通过浏览器驱动呢?
-
驱动作为中间桥梁拦截客户端的桥脚本,每个浏览器都有自己的对应的驱动。
-
对web界面的操作有哪些?点击选择查找。
SeleniumIDE
- SeleniumIDE是嵌入到Firefox浏览器中的一个插件,实现简单的浏览器操作的录制与回放功能
- 该工具是一个用于构建脚本的初级工具,它拥有记录功能,能够记录用户执行的操作,并可以导出为可重复使用的脚本。
- 如果没有编程经验,可以通过seleniumIDE来快速熟悉 sele nIum的命令。
seleniumRC是selenium家族的核心部分
- selenium RC支持多种不同的语言编写的自动化脚本,通过seleniumRC的服务器作为代理服务器去访问应用,从而达到测试的目的。
selenium-Grid
- 例当自动化测试用例达到一定数量的时候,一台机器执行全部测试用例耗时5个小时
- 而如果需要覆盖住浏览器,比如说chrome firefox加起来就是10个小时。
- 这时候领导跟你说有什么办法可以解决这个执行速度。
- 这个工具的作用就是做分布式使用的,通过分布式来提高效率。作用体现解决,重复执行,测试解决多浏览器兼容,这是ui自动化。
- 分布式简单的说就是老大收到任务分布给手下去看,通过seleniumGrid的可以控制多台机器,多个浏览器执行测试用例分布式上执行的环境在 seleniumGrid中称为node节点。
定位元素
- 在自动化测试过程中测试程序通常操作页面元素步骤。
- 找到web的页面元素并赋予找到一个存储对象中。
- 对存储页面元素的对象进行操作,例如点击链接,在输入框中输入字符等。
- 验证页面上的元素是否符合预期?
- 通过这三个步骤,我们可以完成一个页面元素的操作,找到页面元素是很重要的一个步骤,找不到页面,元素后面就没法去做了,web页面技术的现实复杂性造成大量的页面元素很难定位。
定位元素的过程
- web driver操作整个浏览器当前整个页面
- 当前页面上选择符合查找的条件的对象
- 打开网址,回退前进刷新页面
- 获取改变浏览器窗口大小,关闭浏览器截屏
- 获取设置cookies
- element:操作web元素
- 点击元素
- 输入字符
- 获取元素坐标尺寸文本内容,其他属性信息。
1368

被折叠的 条评论
为什么被折叠?



