4:ui自动化相关面试
1:做自动化的目的
业务主功能的冒烟(正向)和回归测试(包含正向和异常的),一些重复性比较高做自动化
2:执行多少用例才会搭建自动化框架
15个页面page对象,80,90多条用例(超过100条最好)
3:ui自动化框架搭建
1:page包:
1:基础页面模块(初始化webdriver,基本元素操作--查找,获取,点击元素,,获取元素属性值,获取元素文本等(
先调显示等待元素可见,在调以封装的获取元素的方法,try 获取文本 expect logging.exception('获取元素属性值失败!!!'),有异常就抛出
没有异常就else logging.info('已获取元素内容) return 返回文本内容
2:页面类模块
每个页面继承基础页面,封装页面业务功能和断言需要的的功能,跳转下一个页面的功能需要返回下一个页面对象
2:用例包
模块test打头,测试方法以test开头,里面就是页面对应功能的调用和测试数据的填充,加上断言
参数化一般用于1:测试步骤和断言控件(相关信息)都是一样的情况最好-最完美 2:参数化操作步骤,断言另外导入
3:测试数据包
每个页面都对应建立一个模块,存储对应正常和异常数据
4:输出文件
log文件和报告
4:编写自动化用例的原则
1:一个用例为一个完整的场景--比如从用户登录到最终关闭浏览器
2:一个用例只验证一个功能点
3:尽量少的编写异常用例,一方面一般异常的用例都比较多,复杂的异常用例容易出错
4:用例之间避免干扰,要有独立性,要清理掉场景的数据
5:selenium原理
1:测试用例执行,通过jsonware协议开启了服务,去绑定浏览器
2:服务会一直监听用例请求,并解析转发给对应的厂商Webdriver
3:webdriver 去操作对应的浏览器执行
4:浏览器执行结果反向给webdriver,给到服务给到测试用例

浙公网安备 33010602011771号