上篇说到,我们的测试步骤
1,打开 百度
2,搜索关键字selenium
3,点击 知道
4,获取百度知道页第一条链接的href属性
5,对比该属性和预期结果是否一样
其实可以将这5个步骤分成三类
1,打开页面
2,进行测试
3,对比实际结果和预期结果
流程类,就是将测试步骤打包在一起,比如这个用例中,2,3,4步骤就可以打包在一起,方便后续调用。
新建Flow包,在包中新建baidu_flow.py文件
from PageObjects import * import time # 需要继承页面对象类BaiDu class BaiduFlow(BaiDu): # 百度搜索关键字,并返回百度知道第一天链接href的流程 def baidu_know_search(self, keyword): self.type_baidu(keyword) # 输入搜索关键词 time.sleep(1) # 强制等待用在调试中,正常项目慎用 self.click_baidu_button() # 点击 百度一下 按钮 time.sleep(3) self.click_know() # 点击 百度知道 time.sleep(1) result = self.get_result_href() # 获取第一天链接的href return result # 返回href
总结:
1.流程类,需要继承页面对象类,便可以调用页面对象类和基类的方法,继承关系 基类 - 页面对象类 - 页面流程类
2.调试中用了大量的sleep方法,在正式项目中,最好使用其他等待方式,sleep方法简单粗暴,适用于调试