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

做网络竞拍的网站金坛区建设局网站

做网络竞拍的网站,金坛区建设局网站,微信网站链接网站建设,网站里的地图定位怎么做的目录#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结#xff08;尾部小惊喜#xff09; 前言 Po模型介绍 1、简… 目录导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结尾部小惊喜 前言 Po模型介绍 1、简介 在自动化中Selenium自动化测试中有一个名字经常被提及PageObject(思想与面向对象的特征相同)通常PO模型可以大大提高测试用例的维护效率 2、为什么要用PO 基于selenium2开始ui自动化测试脚本的编写不是多么艰巨的任务。只需要定位到元素执行对应元素的操作即可。 我们所能做的就是元素的定位然后进行键盘输入或鼠标动作。但随着时间的迁移测试套件将持续的增长。脚本也将变的越来越多。如果我们需要维护10个页面100个页面甚至1000个呢 那么页面元素的任何改变都会让我们的脚本维护变得繁琐复杂而且变得耗时易出错。那怎么解决呢 ui自动化中常用的一种方式引入Page ObjectPO页面对象模式来解决po能让我们的测试代码变得可读性更好可维护性高复用性高。 3、PO的优势 PO提供了一种业务流程与页面元素操作分离的模式这使得测试代码变得更加清晰。 页面对象与用例分离使得我们更好的复用对象。 可复用的页面方法代码会变得更加优化 更加有效的命名方式使得我们更加清晰的知道方法所操作的UI元素。 重用业务和对象分离代码结构清晰方便代码维护 Po的设计模式 PO的核心要素 1、在PO模式中抽离封装集成一个BasePage类该基类应该拥有一个只实现webdriver实例的属性 2、每一个page都继承BasePage通过driver来管理本page中元素将page中的操作封装成一个个方法 3、TestCase继承unittest.Testcase类并依赖page类从而实现相应的测试步骤 PO设计模式中的BasePage基类对应案例中的BasePage.py文件 PO模式中的pages中的案例显示Search.py PO模式设计中TestCase对应案例中的TestCase.py 非PO实现 # 代码展示 from selenium import webdriver from time import sleep driver webdriver.Firefox() driver.get(http://www.baidu.com) driver.find_element_by_id(kw).send_keys(jack) sleep(1) driver.find_element_by_id(su).click() sleep(2) driver.quit()代码分析 不同的运行脚本环境游览器不同驱动webdriver.Firefox()可以剥离 请求地址的变化(生产环境和测试环境)url http://www.baidu.com可以剥离 操作元素时常常要等待元素加载完成方可进行操作可以把webdriver提供的find_element*方法封装在元素操作前先判断元素是否可以操作 实际测试场景中可能有多个测试场景如果每个测试场景都需要维护url,游览器驱动,元素定位等,效率会非常低 因此基于以上分析是否可以设计一个所有测试界面selenium本身是B/S系统开展测试的基类来维护公共的方法此处定义名字为BasePage.py,用于存放页面公共方法及webdriver原有方法二次封装等。 PO实现多个 page界面 1、Base基类base.py from selenium.webdriver.common.action_chains import ActionChains # 鼠标操作class BasePage():初始化方法def __init__(self, dir, url):self.dir dir self.url url 进入网址的方法def enter_url(self):self.dir.get(self.url)定位元素def find_element(self, *args):return self.dir.find_element(*args)点击def click_element(self, *args):ActionChains(self.dir).click(self.find_element(*args)).perform()输入def send_element(self, text, *args):self.dir.find_element(*args).send_keys(text)清除def clear_element(self, *args):self.dir.find_element(*args).clear()表单切换def switch_iframe(self, *args):self.dir.switch_to.frame(self.dir.find_element(*args))窗口切换def switch_window(self, n):self.dir.switch_to.window(self.dir.window_handles[n])2、Pages查找页面元素类hao.py和bddt.py # hao.py from Base.base import BasePage from selenium.webdriver.common.by import By from selenium import webdriverclass SearchPage(BasePage):初始化def __init__(self, dir, url):BasePage.__init__(self, dir, url)进入百度def enter_bd(self):self.enter_url()输入搜索内容def ssnr(self, text):self.send_element(text, By.ID, kw)点击百度一下按钮def clickff(self):self.click_element(By.ID, su)# bddt.py from Base.base import BasePage from selenium.webdriver.common.by import By from selenium import webdriverclass SearchPage2(BasePage):初始化def __init__(self, dir, url):BasePage.__init__(self, dir, url)点击进入hao123def clickenter(self):self.click_element(By.CSS_SELECTOR, .ta)切换句柄hao123def qiehuan(self, n):self.switch_window(n)点击百度地图def clickbddt(self):self.click_element(By.CSS_SELECTOR, .js_bd li:nth-child(6) div:nth-child(1) a:nth-child(1))3、Case测试用例test001.py import unittest from selenium import webdriver from Pages.hao import SearchPage from Pages.bddt import SearchPage2 import timeclass Test01Class(unittest.TestCase):classmethoddef setUpClass(cls) - None:cls.dir webdriver.Firefox()cls.dir.implicitly_wait(30)def test01(self):url http://www.baidu.coms SearchPage(self.dir, url)s.enter_bd()s.ssnr(123)s.clickff()# self.dir.switch_to.window(self.dir.window_handles[-1])def test02(self):url b SearchPage2(self.dir, url)b.clickenter()b.qiehuan(1)time.sleep(10)b.clickbddt()classmethoddef tearDownClass(cls) - None:cls.dir.quit()passif __name__ __main__:unittest.main()下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 一、Python编程入门到精通 二、接口自动化项目实战 三、Web自动化项目实战 四、App自动化项目实战 五、一线大厂简历 六、测试开发DevOps体系 七、常用自动化测试工具 八、JMeter性能测试 九、总结尾部小惊喜 燃起心中的火焰努力奋斗不止坚持才能超越自我。困难是成长的催化剂挑战是前进的动力源。勇敢迈步创造未来在奋斗中绽放永不熄灭的光芒 梦想是奋斗的起点努力是成就的密码不屈不挠是成功的基石。放飞心灵的翅膀勇往直前书写属于自己的辉煌传奇坚守初心超越极限奋斗出荣耀绽放出人生的绚丽篇章 脚步不停追逐梦想的轨迹奋斗是拥抱未来的钥匙。信念如火决心助力只有拼搏才能绽放人生的辉煌。勇往直前砥砺前行执着奋斗终将书写属于自己的壮丽传奇
http://www.w-s-a.com/news/602534/

相关文章:

  • 网站调整方案适合平面设计师的网站
  • 免费服务器建立网站用html5做的旅游网站代码
  • 学校英语网站栏目名称WordPress禁用邮件注册
  • 手机qq网页版网站沧州手机网站开发
  • 深圳罗湖网站设计公司建设的网站属于无形资产吗
  • 网站开发python西安网站建站品牌
  • 网站开发商标属于哪一类做网站还有钱赚吗
  • 做设计的搜素材上什么网站好设计公司画册设计哪家好
  • 视频网站开发需要什么语言做ui设计一年后年薪多少
  • 网站服务器维护费用统一企业官方网站
  • 网站如何调用手机淘宝做淘宝客呼和浩特网站运营公司
  • 做推广可以上那些网站网页游戏排行榜2014前十名
  • 国外网站备案流程企业网站 流程
  • 重庆网站建设letide童程童美少儿收费价目表
  • 苏州建站仿站东莞排名推广
  • 大中小网站的区分wordpress个人主页主题
  • 商务网站建设的可行性分析包括小程序源码网免费
  • 永州网站建设收费标准重庆网站建设公司夹夹虫专业
  • python做网站多少钱wordpress 2.8
  • 深圳网站平台网站开发工作程序怎么写
  • 自己可以接单做网站吗wordpress 添加自定义按钮
  • 网站首页权重宣传页制作
  • 智能网站建设软件有哪些方面网页的建设
  • 石铜路网站建设生鲜电商网站开发
  • 怎么提高网站加载速度慢网站的轮播怎么做的
  • 网络网站推广优化建筑工程教育网官方网站
  • 旅行社网站策划做网站编辑好还是美工好
  • 珠海做网站找哪家好在线磁力搜索神器
  • 做网站优化有必要wordpress导航栏字体
  • 中山网站建设半江红沈阳免费网站建站模板