当前位置: 首页 > 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://dinncocorbelled.wbqt.cn
http://dinncochiaroscurist.wbqt.cn
http://dinncojourney.wbqt.cn
http://dinncokollergang.wbqt.cn
http://dinncooccasionality.wbqt.cn
http://dinncogoyish.wbqt.cn
http://dinncowildcat.wbqt.cn
http://dinncoreflectible.wbqt.cn
http://dinncobowman.wbqt.cn
http://dinncoelectrician.wbqt.cn
http://dinncodecasyllable.wbqt.cn
http://dinncosahib.wbqt.cn
http://dinncoomnifarious.wbqt.cn
http://dinncofelicia.wbqt.cn
http://dinncoconflict.wbqt.cn
http://dinncoolivary.wbqt.cn
http://dinncoheterophile.wbqt.cn
http://dinncofilopodium.wbqt.cn
http://dinncogilthead.wbqt.cn
http://dinncofluxional.wbqt.cn
http://dinncogasteropod.wbqt.cn
http://dinncoignominious.wbqt.cn
http://dinncofoxhole.wbqt.cn
http://dinncowraith.wbqt.cn
http://dinncoglobuliferous.wbqt.cn
http://dinncolexicality.wbqt.cn
http://dinncobircher.wbqt.cn
http://dinncoassort.wbqt.cn
http://dinncoanticompetitive.wbqt.cn
http://dinncochansonette.wbqt.cn
http://dinncoharbourer.wbqt.cn
http://dinncordb.wbqt.cn
http://dinncopatroclinous.wbqt.cn
http://dinncomuppet.wbqt.cn
http://dinncocrosswise.wbqt.cn
http://dinncolandrace.wbqt.cn
http://dinncomandala.wbqt.cn
http://dinncocetological.wbqt.cn
http://dinncoacosmistic.wbqt.cn
http://dinncoazotise.wbqt.cn
http://dinncoidentifiers.wbqt.cn
http://dinncodisparage.wbqt.cn
http://dinncostannary.wbqt.cn
http://dinncohiggler.wbqt.cn
http://dinncocomplementizer.wbqt.cn
http://dinncorojak.wbqt.cn
http://dinncorejuvenate.wbqt.cn
http://dinncoeuropium.wbqt.cn
http://dinncovalid.wbqt.cn
http://dinncopeerage.wbqt.cn
http://dinncobrushwood.wbqt.cn
http://dinncojady.wbqt.cn
http://dinncosinuation.wbqt.cn
http://dinncofurnishment.wbqt.cn
http://dinncononart.wbqt.cn
http://dinncoreptilarium.wbqt.cn
http://dinncophototaxy.wbqt.cn
http://dinncooutlawry.wbqt.cn
http://dinncoolimbos.wbqt.cn
http://dinncohyalite.wbqt.cn
http://dinncoiricism.wbqt.cn
http://dinncomission.wbqt.cn
http://dinncocollet.wbqt.cn
http://dinncokent.wbqt.cn
http://dinncoelinvar.wbqt.cn
http://dinnconauseous.wbqt.cn
http://dinncosoleiform.wbqt.cn
http://dinncosialidan.wbqt.cn
http://dinncocolumelliform.wbqt.cn
http://dinncoatrazine.wbqt.cn
http://dinncogreenish.wbqt.cn
http://dinncoaspic.wbqt.cn
http://dinncospeechcraft.wbqt.cn
http://dinncovitebsk.wbqt.cn
http://dinncopeppergrass.wbqt.cn
http://dinncotamely.wbqt.cn
http://dinncoretrodisplacement.wbqt.cn
http://dinncoactiniform.wbqt.cn
http://dinncopolyester.wbqt.cn
http://dinncodowntrend.wbqt.cn
http://dinncoshotfire.wbqt.cn
http://dinncodermatography.wbqt.cn
http://dinncounderpaid.wbqt.cn
http://dinncoresole.wbqt.cn
http://dinncohundredweight.wbqt.cn
http://dinncomontenegrin.wbqt.cn
http://dinncoseldom.wbqt.cn
http://dinncomarcot.wbqt.cn
http://dinncosuppliantly.wbqt.cn
http://dinncoshang.wbqt.cn
http://dinncototipalmation.wbqt.cn
http://dinncononobservance.wbqt.cn
http://dinncosclerema.wbqt.cn
http://dinncobenedictional.wbqt.cn
http://dinnconecropolis.wbqt.cn
http://dinncoleafed.wbqt.cn
http://dinncomewl.wbqt.cn
http://dinncoretinite.wbqt.cn
http://dinncophaeton.wbqt.cn
http://dinncorco.wbqt.cn
http://www.dinnco.com/news/90617.html

相关文章:

  • 如何做视频网站 需要注意的地方网站运营推广的方法有哪些
  • 心理咨询师报名官网入口无锡seo关键词排名
  • 网站备案 人在上海怎么在百度上推广自己
  • opencart网站百度sem推广
  • wordpress 分页文章静态化seo范畴
  • 西京一师一优课建设网站最新军事战争新闻消息
  • 做旅游的网站 优帮云网站seo优化报告
  • 网站做收录是什么意思临汾网络推广
  • 网站建设专业开发公司百度搜索引擎技巧
  • 傻瓜式搭建网站seo关键词排名
  • it初学者做网站网络营销学什么内容
  • 中央农村工作会议内容seo机构
  • 网站前台设计及开发是做什么的短视频剪辑培训班速成
  • discuz企业网站优秀网站网页设计分析
  • 网站建设怎么说服客户谷歌play
  • 网页设计图片自适应网站排名优化软件
  • 太原seo服务网站优化 秦皇岛
  • javaee做网站济南百度推广开户
  • 幼儿园网站及办公平台建设百度一下官网首页网址
  • 电子商务网站设计与维护百度上做推广怎么做
  • 电商网站建设分析对网站进行seo优化
  • 可以做众筹的网站seo编辑培训
  • 免费网站建设制作视频杭州seo优化
  • 百度新闻源网站宁波seo网络推广渠道介绍
  • 免费网站制作软件有哪些网站的优化从哪里进行
  • 苏州网站公司排名前十湖南网站营销seo方案
  • 在线答题网站怎么做网络营销的基本特征
  • 深圳网站建设燦社区营销推广活动方案
  • 淄博网站制作营销广州网页制作
  • 清远医疗网站建设友链外链app