当前位置: 首页 > news >正文

静态网站举例水利网站建设管理汇报

静态网站举例,水利网站建设管理汇报,民非单位年检那个网站做,请问网络维护有前途吗一、什么是PO模式 全称:page object model 简称:POM/PO PO模式最核心的思想是分层,实现松耦合!实现脚本重复使用,实现脚本易维护性! 主要分三层: 1.基础层BasePage:封装一些最基…

一、什么是PO模式

全称:page object model  简称:POM/PO

PO模式最核心的思想是分层,实现松耦合!实现脚本重复使用,实现脚本易维护性!

主要分三层:

1.基础层BasePage:封装一些最基础的selenium的原生的api方法,元素定位,框架跳转等。

2.PO层:元素定位、获得元素对象,页面动作

3.测试用例层:业务逻辑,数据驱动!

三者的关系:PO层继承继承层,测试用例层调用PO层!

二、什么是自动化测试框架

说到自动化框架,我相信很多人应该都听过这个词,但是不知其到底是个什么东西,为什么要用自动化框架。有很多人堆自动化框架都是懵懵懂懂,就跟谈恋爱一样,朦胧美!

一个好的自动化测试框架是可以让不那么懂技术的人也可以写自动化测试脚本的,

一个好的自动化测试框架可以减少自动化测试中脚本管理和维护当中的人力物力和财力。

其实自动化框架的一个最大的意义在于可重用性。因为在框架里,你可以实现很多的通用功能来简化整个脚本的开发过程。并且生成美观的测试报告。

三、非PO模式和PO模式优缺点对比

四、如何从0到1搭建PO模型

非PO模式举个栗子:有如下百度搜索脚本:

import unittest
from selenium import webdriver
from selenium.webdriver.common.by import Byclass Test(unittest.TestCase):def test01(self):# 打开浏览器driver = webdriver.Chrome()# 加载百度首页driver.get('http://www.baidu.com')# 在百度搜索栏中输入软件测试driver.find_element(By.ID, 'kw').send_keys('软件测试')# 点击百度一下按钮driver.find_element(By.ID, 'su').click()def test02(self):# 打开浏览器driver = webdriver.Chrome()# 加载百度首页driver.get('http://www.baidu.com')# 在百度搜索栏中输入软件测试driver.find_element(By.ID, 'kw').send_keys('硬件测试')# 点击百度一下按钮driver.find_element(By.ID, 'su').click()

如何把上述栗子改成PO模式呢?

1、基础层BasePage

from selenium import webdriverclass BasePage:#构造方法def __init__(self):# 打开浏览器self.driver = webdriver.Chrome()  # Alt+Enter# 加载百度首页self.driver.get('http://www.baidu.com')#封装定位元素def find_ele(self,*args):ele = self.driver.find_element(*args)return ele

2、PO层:封装百度页面元素定位,元素对象以及页面操作

from selenium.webdriver.common.by import By
from base.base_page import BasePageclass BaiduPage(BasePage):#元素定位,baidu_text_loc = (By.ID, 'kw')baidu_submit_loc = (By.ID, 'su')#获得元素对象,def get_text_obj(self):ele = self.find_ele(*BaiduPage.baidu_text_loc)return eledef get_submit_obj(self):ele = self.find_ele(*BaiduPage.baidu_submit_loc)return ele#页面操作def search(self,search_string):self.get_text_obj().send_keys(search_string)self.get_submit_obj().click()

3、测试用例层:业务逻辑和数据驱动

from ddt import ddt, data
from po.baidu_page import BaiduPage@ddt
class BaiduTest(unittest.TestCase):@data('软件测试','硬件测试')def test01(self,seaString):BaiduPage().search(seaString)time.sleep(5)if __name__ == '__main__':unittest.main()

从上面的PO案例:让我们更加了解清晰PO的优点在于:

1.POM把页面元素定位和业务操作流程分开。实现松耦合。
2.UI元素的改变不需要修改业务逻辑代码。只需要找到对应的PO页修改定位即可,数据代码分离
3.PO能使我们的测试代码提高代码的可读性,高复用性,可维护性。

五、自动化测试框架和PO的关系
自动化框架=po+各种封装(日志处理封装,全局配置文件的封装,数据库连接的封装,excel操作封装,数据驱动封装等)

其实想要胜任UI自动化测试岗位还需要掌握以下内容:

1.python或java

2.selenium的API

3.unittest/pytest单元测试框架

4.htmltestrunner/allure测试报告

5.数据驱动dtt(excel,yaml,mysql)或pytest中的fixtrue

6.关键字驱动:公共类,方法封装,随机数,数据库连接,全局登录

7.全局配置文件处理

8.日志处理

9.断言

10.第三方库

11.git和github或码云集成开发!

12.jenkins持续集成

这些内容在我的CSDN博客当中基本都有涉猎,大家需要什么就去搜索什么吧!

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方进群即可自行领取。     

http://www.yayakq.cn/news/298133/

相关文章:

  • 唐山路南网站建设电子商务网站模板 下载
  • 重庆业务外包网站建设重庆新闻第一眼
  • 网校网站开发网站seo哪里做的好
  • 网站被k怎么办百度人工智能
  • 想建网站怎么做摄影设计海报
  • 在哪个网站注册公司免费网站源码下载平台
  • 服务之家做网站简单吗asp网站建设与设计
  • 网站是否wordpress网站运作模式
  • 怎样做的网站内网外网都能用wordpress 4.9.8主题
  • 设计师必备的6个网站网站 推送
  • jsp和.net做网站的区别wordpress 加速插件
  • 潍坊高密网站建设阜沙网站建设
  • 国内做的比较好的数据网站网页设计论文答辩问题
  • 广州外贸网站公司为什么wordpress打开很慢
  • 网站开发毕业答辩演讲稿范文网站建设商务代表工作总结
  • 哪家企业做网站wordpress win8 主题下载
  • 北京市电力建设公司网站公众号推广引流
  • 做淘宝客网站用什么系统深圳形象设计公司
  • 凡科如何开通网站建设正规的源码交易平台
  • 网站上门备案天水模板型网站建设
  • wordpress 上传图片尺寸郑州百度推广seo
  • 重庆市建设工程安全管理网站做企业门户网站都
  • 做ptt有什么好的模板网站产品单页设计图片
  • 58同城佛山网站建设shopex 网站搬家
  • 微商城网站建设策划有哪些做平面设计好的网站有哪些
  • 云南建设银行官方网站宁夏城乡建设厅网站
  • 可直接打开网站的网页wordpress高级应用
  • 网站设计经典案例分析移动建站价格
  • 宝坻建设路小学网站领星erp系统
  • 码云pages做静态网站首钢水钢赛德建设有限公司网站