一. 进行参数化的时候优先级问题处理出错
(1) 获取浏览器驱动和打开项目的地址要写在方法级别中的fixture中, 否则会没法参数化, 因为关闭浏览器驱动以后, 读取parmeterized里的第二组数据就会因为类方法只会执行一次, 所以你在第一条测试用例结束后关闭浏览器驱动对象而造成参数化(实际上是重复执行该条测试用例)因为没有浏览器驱动对象而直接无法执行.
为什么要每次执行一个测试方法就要退出一次浏览器, 因为最好是每个测试方法来模拟EXCEL表格中的一条测试用例, 降低测试脚本之间的耦合性,彼此互不影响, 不要让一个测试类里的某个test方法依赖于上一个test方法的实现成功, 因为实际项目中, 有可能测试环境的服务器有时候响应不到某些接口导致某条test用例就会执行失败
(2)查找元素的基类的实例化对象,如果用在类级别的fixture方法里, 会随着关闭了浏览对象而消失,所以如果第二次重复使用它来查找元素就会出错,因为都已经关闭了,所以要用在方法级别的fixture中,否则无法参数化,
二.在web页面添加某些数据后, 如果直接点击这个页面的删除数据按钮, 有时候会出现刚刚新增的数据并没有查询到,所以找不到就删除不了,就会失败?
解决方法, 可以在添加成功后, 脚本中加入一个刷新浏览器的操作, 强行刷新两次,就可以从后台获取数据, 这样新增的数据就会在页面上看到, 那就可以定位到它, 就可以点击删除了
web自动化中一些实用技巧
最新推荐文章于 2021-03-18 11:00:00 发布