Selenium-PO模型设计思路

PO模型的设计思路:

1.将每个页面的元素保存在ini文件中;

2.封装page页面定位元素方法;

3.封装handle页面操作方法;

4.组合handle and page,并断言页面提示信息和执行情况;

5.最后封装成可执行业务模块用例;

img

  • 封装find_element方法
#coding=utf-8

class FindElement(object):
    def __init__(self,driver):
        self.driver = driver
=
    def get_element(self,by):
        try:
            if by == 'id':
                return self.driver.find_element_by_id(value)
            elif by == 'name':
                return self.driver.find_element_by_name(value)
            elif by == 'className':
                return self.driver.find_element_by_class_name(value)
            else:
                return self.driver.find_element_by_xpath(value)
        except:
            return None
  • 封装page页面元素
from find_element import FIndElement
class RegisterPage:

	def __init__(self,driver):
        self.findelement_info = FindElement(driver)

	#获取邮箱元素
    def get_email_element(self):
        return self.findelement_info.get_element("user_email")

    #获取用户名元素
    def get_username_element(self):
        return self.findelement_info.get_element("user_name")
		
		# 获取错误元素
			def get_email_element_error(self):
					pass

	
  • 封装handle操作方法
#coding=utf-8
from register_page import RegisterPage
class RegisterHandle(object):
    def __init__(self,driver):
        self.driver = driver
        self.register_page_info = RegisterPage(self.driver)
    #输入邮箱
    def send_user_email(self,email):
        self.register_page_info.get_email_element().send_keys(email)
    
    #输入用户名
    def send_user_name(self,username):
        self.register_page_info.get_username_element().send_keys(username)

    #输入密码
    def send_user_password(self,password):
        self.register_page_info.get_password_element().send_keys(password)

具体设计思路:
page 主要是封装某一个页面获取页面元素的定位信息,其中分为两种,第一种是基本信息如邮箱元素,用户名元素,密码元素;第二种是页面元素提示信息,如用户名提示信息,邮箱提示信息,密码提示信息等等;
handle封装的是针对某个页面的所有执行操作方法
业务层组装handle层和page层组合采用数据驱动的方法;
在实际实现过程中,可以讲handle and page 层 合并在一起,在business层进行统一的调度处理;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值