小黄鸡欢迎同学前来面试自动化篇>>
引言:自动化永远是避不开的,反正你入职的岗位要不要用自动化,你必须得会一点,加分项。这一块包括自动化一些理念和自动化的工具使用。有同学说问题太多难消化,那就每天只推送十题之内。
××× 末尾:今天有作业!×××
一.如何提高selenium脚本的执行速度?
1.少用sleep
2.多用显式等待方法
3.性能好的电脑执行
二,用例在运行过程中经常会出现不稳定的情况,也就是这次可以通过,下次无法通过了?
1.查找元素前先做判断:expected_conditions()里面的各种方法
2.显式等待:WebDriverWait()
注:这两者配合使用
三,你的自动化用例的执行策略是什么?
1.集成到jenkins一键执行,可以手动执行,也可以定时执行
四.什么是持续集成?
持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。
五.id,name,class,xpath,css selector这些属性,你最偏爱哪一种,为什么?
css,css语法简洁,定位快(xpath语法长,定位慢,还不稳定)
六.如何去定位页面上动态加载的元素?
WebDriverWait()方法循环去查询是否元素加载出来了
七.如何定位属性动态变化的元素?
先去找该元素不变的属性,要是都变,那就找不变的父元素,同层级定位(以不变应万变)
八.点击链接以后,selenium是否会自动等待该页面加载完毕?
这个不会,没加载完也可以进行下一步操作
九.如果有时候因网络较慢或其他原因导致定位不到其他元素,如何提高覆盖率?
1.等待页面加载完成,隐式等待
2.显式等待
十.显式等待和隐式等待的作用和区别
显式等待:用于等待某个条件发生,然后再继续执行后续代码。显式等待是等元素加载
隐式等待:相当于设置全局的等待,在定位元素时,对所有元素设置超时时间。隐式等待是等页面加载,而不是元素加载(隐式等待就是针对页面的,显式等待是针对元素的)
布置作业:
各位童鞋,用python写一个冒泡排序?