面试干货:selenium自动化篇

如何提高selenium脚本的执行速度?

selenium脚本的执行速度受到多方面的影响,如网络,页面加载速度,操作的繁琐程度,等待时间等。

提高脚本执行速度,可以从以下几个方面入手:

    1. 操作比较繁琐的,比如要点击几个链接才能跳到对应的测试页面,可以考虑直接使用链接地址直接跳转,避免繁琐的操作步骤

    2. 等待时间,需要根据实际情况来合理使用三种等待方式

    3. 对于页面加载非常缓慢的,可以考虑在不影响测试脚本执行的前提下(比如有很多图片还没加载出来),设置中断时间,中断页面加载。

    4. 可以引入selenium-grid分布式及多线程技术,提高脚本的并行运行数量

用例在运行过程中经常会出现不稳定的情况,这次通过,下次不通过,如何提升稳定性?

这里要结合实际去分析导致脚本不稳定的因素,是等待时间不合理,还是网速问题,还是多线程运行导致的?

可以从以下几个方面着手:

    1. 在频繁出现检查失败的元素前加上等待时间

    2. 多用try……catch捕捉处理异常

    3. 多线程运行用例的时候,用例之间如果存在依赖关系,比如运行b用例之前,必须先运行a用例,这种情况下,多线程运行用例往往就会出现问题,避免这种问题,最好的方式是,降低用例之间的依赖关系,最好就是用例之间不要用任何依赖关系

如何定位属性动态变化的元素?

xpath,或者css通过同级,父级,子级定位

点击链接以后,selenium是否会自动等待页面加载完毕?

什么是断言?

判断脚本运行的实际结果,是否符合预期结果

自动化测试用例哪里来?

可以从手工测试用例中挑选,优先挑选核心功能业务的用例来实现自动化

如何保证元素操作的成功率?

合理添加等待时间,在进行元素操作前,先判断元素是否存在

selenium脚本中的测试数据,怎么维护?

excel,csv,yaml,json等等都可以。

在selenium脚本开发调试过程中,你碰到过哪些异常?

1.ElementNotSelectableException :元素不能选择异常

2. ElementNotVisibleException :元素不可见异常

3. NoSuchAttributeException :没有这样属性异常

4. NoSuchElementException:没有该元素异常

5. NoSuchFrameException :没有该frame异常

6. TimeoutException :超时异常

7. Element not visible at this point  :在当前点元素不可见

元素找不到可能有哪些原因?

1.动态id定位不到元素

2.页面里嵌套了框架

3. xpath描述错误

4.点击速度过快,等待时间不足,页面没有加载出来就需要点击页面上的元素

5. 新打开的窗口,没有进行窗口切换

6. 有弹框

如何定位页面动态加载的元素?

1.根据业务操作流程,触发页面加载,并设置合理的等待时间。

2.使用js脚本(excute_scripts())直接触发页面加载。

如何处理验证码?

1.找开发提供万能验证码(有风险)

2.测试环境屏蔽验证码模块

3.通过设置cookies,跳过验证码

4.图像识别输入

webdriver异常怎么处理?

1.记录异常运行日志,截图信息

2.用例失败重跑机制

end


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TestEg

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值