元素定位
基础题
1、web元素定位:8种
绝对路径: / 从根节点开始查找
相对路径:// 表示选择任意位置的节点开始
使用通配符(*)*表示任意 html 标签,比如说使用//*
元素属性定位 //div/input[@name='用户名']
函数:文本: //div/button/span[@text()='登录']
包含://*[contains(@text,“登录”)] 文本中包含‘登录’的元素
函数组合使用://div[contains(tex(),'密码')]
/..支持定位上一层级
2、app定位5种
3、接口自动化测试中的关联怎么处理?参数化
用正则表达式提取到上一个接口的值,利用反射存储在全局变量中,下一个接口读取全局变量的值,替换到请求数据当中。
4、自动化测试怎么校验结果?
通过unnitest断言机制来比对结果
哪几种断言:等于、In,AssurtEqual
解析响应结果?json、jsonpath
5、如何定位页面上属性动态变化元素?
6、如何判断页面上的元素存在?
等待:显性等待
7、启动浏览器,使用的是哪个webdriver协议?chrome
进阶问题:
1、自动化测试框架?
2、具体的在这个项目中怎么应用的?
持续集成平台jenkins,每周执行一次,项目转测后,每天执行2次,分析执行结果,邮件发送报告至全员
3、实现了多少用例?用例执行时间多久?和功能测试比例多少?
500+用例,
4、使用工具和自己写框架的区别?
没有任何工具适用于所有平台
一、有几种元素常用定位方式,分别是?你最偏爱哪一种,为什么?
答:8种:id、name、class name、tag name、link text、partial link text、xpath、css selector 偏爱哪一种?答:xpath、css几乎所有的元素都可以定位到,但是它们的短处在于页面上更改了元素后位置很容易改变,且xpath语法长,定位慢,还不稳定;css语法简洁,定位快,瑕不掩瑜,所以首先使用的还是id或者name、css等。
二、如何去定位页面上动态加载的元素?
答:1,触发动态加载元素的事件,直至动态元素出现,进行定位
2,WebDriverWait()方法循环去查询是否元素加载出来了
三、如何去定位属性动态变化的元素?
答:xpath或者css通过同级、父级、子级进行定位
点击链接以后,selenium是否需要自动等待该页面加载完毕?
答:需要