自动化测试记录

https://www.cnblogs.com/mrjade/p/12737889.html

(*)在selenium自动化测试中,你一般完成什么类型的测试?自动化覆盖率?

主要是冒烟测试和回归测试。回归测试主要写一些功能稳定的场景,通过自动化手段去实现,节约测试时间。因为自动化测试用例也是在不断的更新和迭代,没有刻意去统计,大概在30%-40%左右!

冒烟测试and回归测试:

冒烟测试就是完成一个新版本的开发后,对该版本最基本的功能进行测试,如果通过测试,才会进行下一步的测试(功能测试,集成测试,系统测试等等)。冒烟测试的目的就是为了减小 软件的测试成本!试想一下,如果完成的一个版本,不去做冒烟测试,而是直接去做余下的测试,做着做着发现做不下去了,因为测试过程中发现最基本的业务功能模块都存在bug,更别说相关的其他功能模块了,更别说集成测试等其他测试了,而bug发现的越早其修复bug所耗费的成本越低,如果不做冒烟测试,可以想象成本代价风险多高!
回归测试我有两层理解,一是就是当你修复一个bug后,把之前的测试用例再次应用到修复后的版本上进行测试。二是当一个新版本开发好后,而且冒烟测试通过,此时可以先用上一个版本的测试用例对新版本进行测试,看是否有bug!其实回归测试用的很多,比如新增加一个功能模块等等,所以自动化测试可以高效率的进行回归测试。

(*)如果一个元素无法定位,你一般会考虑哪些方面的原因?

1.页面加载元素过慢,加等待时间

2.页面有frame框架页,需要先跳转入frame框架再定位

3.可能该元素是动态元素,定位方式要优化,可以使用部分元素定位或通过父节点或兄弟节点定位。

4.可能识别了元素,但是不能操作,比如元素不可用,不可写等。需要使用js先把前置的操作完成,

(*)元素定位方法你熟悉的有哪些?

id name classname link_text css xpath

(*)遇到alert弹出窗如何处理?

使用driver.switch_to.alert方法先跳转到alert弹出窗口

然后再通过accept点击确定按钮,通过dismiss点击取消,通过text()获得弹出窗口的文本。

'''
如果页面出现alter对话框,那么无法查找它的元素
那么可以使用其他办法
'''
alter = driver.switch_to.alter() #返回一个对象,里面有accept()和dismiss() alter.accept() #确定
alter.dismiss() #取消

(*)Action Chains类常用于模拟鼠标的行为,比如单击,双击,拖拽等行为,使用下面的方法导入Action Chains类

原文地址:https://www.cnblogs.com/bashliuhe/p/13579372.html