4、对各页面元素及方法进行封装

所谓的POM(Page Object Model)设计模式其实就是把一个页面当作一个对象,将一个页面中的所有元素及方法封装在一个java类中。

下面封装了3个页面的元素:


依次打开看看吧。

1、home_baidu.py

# -*- coding:utf-8 -*-
from framework.basepage import BasePage

class Home_Baidu(BasePage):
    news = u'新闻'
    hao123 = u'hao123'
    map = u'地图'
    vedio = u'视频'
    tieba = u'贴吧'

    def __init__(self, driver):
        # super(Home_Baidu, self).__init__(driver)
        self.driver = driver

    def news_ele(self):
        return self.find_link_text(self.news)

    def vedio_ele(self):
        return self.find_link_text(self.vedio)

    def click_news_ele(self):
        self.find_link_text(self.news).click()

    def click_vedio_ele(self):
        self.find_link_text(self.vedio).click()

2、news_page.py

# -*- coding:utf-8 -*-
from framework.basepage import BasePage


class News_Page(BasePage):
    news_input_id = 'ww'
    news_submit_id = 's_btn_wr'

    def __init__(self, driver):
        # super(News_Page, self).__init__(driver)
        self.driver = driver

    def news_input_ele(self):
        return self.find_id(self.news_input_id)

    def news_submit_ele(self):
        return self.find_id(self.news_submit_id)

3、vedio_page.py

# -*- coding:utf-8 -*-
from framework.basepage import BasePage


class Vedio_Page(BasePage):
    vedio_input_id = "new-bdvSearchInput"
    vedio_submit_id = "new-bdvSearchBtn"

    def __init__(self, driver):
        # super(Vedio_Page, self).__init__(driver)
        self.driver = driver

    def vedio_input_ele(self):
        return self.find_id(self.vedio_input_id)

    def vedio_submit_ele(self):
        return self.find_id(self.vedio_submit_id)
可以发现这些类都继承了BasePage类使得可以使用BasePage类中二次封装的方法。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值