测试用例场景 当你的测试用例纠结细枝末节的时候,你就需要通过判断元素的css属性来验证你的操作是否达到了预期的效果.比如你可以通过判断页面上的标题字号以字体来验证页面的显示是否符合预期.当然,这个是强烈不推荐的.因为页面上最不稳定的就是css了,css变动频繁,次方法不常使用 Python脚本 测试用HTML代码: <html> <head> <meta http-equiv="content-type" content="text/html;c…
下面将使用webdriver来模拟测试中观察测试对象的状态的操作 测试用例场景 在web自动化测试中,我们需要获取测试对象的四种状态 是否显示.使用element.is_displayed()方法: 是否存在.使用find_element_by_xxx方法,捕获其抛出的异常, 如果存在异常的话则可以确定该元素不存在: 是否被选中.一般是判断表单元素,比如radio或checkbox是否被选中.使用element.is_selected()方法: 是否enable,也就是是否是灰化状态.使用ele…
下面将使用WebDriver中的send_keys来模拟键盘按键输入 测试用例场景 send_keys方法可以模拟一些组合键操作: ctrl+a ctrl+c ctrl+v 等. 另外有时候我们需要在测试时使用tab键将焦点转移到下一个元素,这时候也需要send_keys.在某些更复杂的情况下,还会出现使用send_keys来模拟上下键来操作下拉列表的情况. Python脚本 测试HTML代码: <html> <head> <meta http-equiv="con…
下面将使用WebDriver来模拟操作一个层级定位元素的操作 测试用例场景 在实际的项目测试中,经常会有这样的需求:页面上有很多个属性基本相同的元素,现在需要具体定位到其中的一个.由于属性基本相当,所以在定位的时候会有些麻烦,这时候就需要用到层级定位.先定位父元素,然后再通过父元素定位子孙元素. Python脚本 下面的代码演示了如何通过层级定位来定位下拉菜单中的某一项.由于两个下拉菜单中每个选项的link text都相同,href也一样,所以在这里就需要使用层级定位了. 具体思路是:先点击显示…
下面将使用webdriver来处理一些页面跳出的对话框事件 测试用例场景 页面上弹出的对话框是自动化测试经常会遇到的一个问题.前端框架的对话框经常是div形式的,下面是一些常见的对话框操作事件: 打开对话框 关闭对话框 操作对话框中的元素 Python脚本 测试用HTML代码: <html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"…
下面将使用WebDriver来模拟操作:选择一个Navigation bar的选项 测试用例场景 Navigation Bar可以看作是简单的类似于tab的导航栏.一般来说导航栏都是ul+li.先定位ul再去层级定位li中的link基本就能解决问题(一般情况下) Python脚本 测试用HTML代码: <html> <head> <meta http-equiv="content-type" content="text/html;charset=…
测试用例场景 模拟选择下拉菜单中数据的操作 Python脚本 测试用HTML代码: <html> <body> <form> <select name="cars"> <option value="volvo">Volvo</option> <option value="saab">Saab</option> <option value=&quo…
由于本人的学习定位是基于Selenium+WebDriver+Python+FireFox+Eclipse+Pydev, 所以我的笔记也只和这方面相关. 我打算先学习基于Python脚本WebDriver的常用操作. 在学习本篇章之前,要先学习Selenium-IDE 和 Selenium-RC的一些基础知识,以及做好Python脚本的WebDriver的客户端配置. 下面开始记录我的WebDriver常用操作学习过程. 测试用例场景 使用WebDriver打开FireFox浏览器 Python…
这一部分的内容,将是在WebDriver中,定位元素方法的演示,是将Selenium中Selenese元素定位命令的WebDriver中使用方法的结合 Selenium中元素定位方法复习可以参考: <零成本实现Web自动化测试--基于Selenium> 第四章 Selenium 命令 测试用例场景 测试对象的定位和操作是webdriver的核心内容,其中操作又是建立在定位的基础之上,因此对象定位就越发显得重要了. 定位对象的目的一般有下面几种 操作对象 获得对象的属性,如获得测试对象的clas…
测试用例场景 获取测试对象的内容是前端自动化测试里一定会使用到的技术.比如我们要判断页面上是否显示了一个提示,那么我们就需要找到这个提示对象,然后获取其中的文字,再跟我们的预期进行比较.在webdriver中使用element.attribute()方法可以获取dom元素(测试对象)的属性. 获取测试对象的属性能够帮我们更好的进行对象的定位.比如页面上有很多class都是'btn'的div,而我们需要定位其中1个有具有title属性的div.由于selenium-webdriver是不支持直接使…