web自动化测试核心内容:
- 元素定位
- 网页操作
- 等待
- pytest + selenium
- 项目实战
1.为什么要元素定位
元素定位是为了操作浏览器,如输入内容,点击按钮等,就是手工做的,自动化都可以做
2.自动化去查找元素的方法
- 网页的页面结构(selenium),优点是兼容性强,只要结构不变就能找到,不管屏幕大小的改变还是像素的改变都不会影响
- 坐标(像素 x,y,airtest),缺点:当浏览器窗口放大或缩小的坐标会发生变化
- 图像识别(把输入框或按钮先截图下来,然后拿着图片来对照找,airtest),缺点:当浏览器放大或缩小后,可能截图识别不出来,还有图片占用CUP很多,处理速度要慢
3.什么是页面结构:
页面结构是由各种各样的网页标签构成,形成很复杂的树形结构,由标签、属性、text文本构成
4.find_element 和 find_elements 的区别
find_element 如果找到多个元素,只会返回第一个,如果没有找到,就会报错
find_elements 如果找到多个元素,都会存在列表当中,如果没有找到,不会报错
如果通过某各方式找到了多个元素,需要进一步去筛选,加条件,通过xpath来实现
from selenium import webdriver
import time
class TestDeom:
def test_01(self):
with webdriver.Chrome() as browser:
browser.get('http://baidu.com/')