web自动化项目

71版本驱动比较好

测试框架的搭建

#第一个测试用例
在这里插入图片描述

在这里插入图片描述

PO模式(面试)

#PO模式 POM
#英文全称:page object model 将UI中的页面封装成对象
#我们把页面操作的逻辑从测试代码当中提取出来
#函数封装的好处:
#1、实现了测试代码和页面代码的分离,维护更加方便
#----当页面发生变化的时候,测试代码不需要修改
#----测试需求发生变化的时候,页面代码不需要修改
#2、维护成本低
#3、提高代码的复用性(A、逻辑一样的时候可以重复使用同样的代码)
# B、不同的测试逻辑(测试不同的模块的时候,如果重复用到了同样的步骤,只需要去调用相关的函数就可以了)
#4、可读性更强

总结

driver.get()访问网站
driver.find_element 找元素
driver.find_element_by_xpath()不要去copy网站给我们提供的xpath表达式
找到元素以后
e=driver.find_element_by_xpath()
e类型是什么类型?WebElement对象
#获取id, e.id
#e.text 获取文本
#获取指定的属性 e.get_attribute(" herf")
#操作元素
e.click() 点击元素
e.send_keys() 发送数据
e.submit() 提交表单(e 要在form表单中)

#等待
1、强制等待()
使用场景:
1、隐式等待,显式等待不适合的。系统交互,多个系统衔接的地方。
e.g:js指令发送的时候
2、文件上传:pyautogui pywin32

2、隐式等待
使用场景:初始化浏览器以后,直接添加。
(一个浏览器会话对象只需要添加一次,只适合用来查找元素。窗口切换等场景隐式等待不行)

3、显式等待
使用场景:窗口切换,iframe,alert,(visible,precence,click)
小技巧:先不使用显式等待,看隐式等待能不能找到,如果不能找到,再用显式等待。
在这里插入图片描述
#窗口切换,封装好方法.windows,依据:windows_handler 窗口句柄
driver.switch_to.windows() 等待

iframe,依据:index,name,webelement 对象
等待:4、(BY.ID,“id_value”)

alert

鼠标操作:ActionChains()
ac=ActionChains()
ac.move_to().click().drag_and_drop()
ac.perform()

键盘操作:e.send_keys(Keys.Enter)

POM
PO模式 Page Object Model
页面对象模型

将测试逻辑和页面逻辑分离,把页面相关的操作都放到一个页面类中。
在测试的时候,直接调用相关的页面操作方法,实现了页面操作的复用性。
1、提高了复用性
2、可维护性
3、扩展性。有新的页面,建立一个新的页面类
4、可读性

poll_frequcey 轮循时间

和接口测试存放数据的区别在于:测试失败数据和成功的数据分表单存储
在这里插入图片描述
在这里插入图片描述
出现几秒就不见的弹框:主要是靠js实现的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试数据分组的依据:
页面逻辑不一样
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值