【selenium学习中级篇 -22】封装第一个流程类

上篇说到,我们的测试步骤

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方法简单粗暴,适用于调试

原文地址:https://www.cnblogs.com/ronyjay/p/12979428.html