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

装潢公司网站建设高要市建设局网站

装潢公司网站建设,高要市建设局网站,seo技术培训班,sql wordpress迁移要做 ui 自动化测试#xff0c;使用关键字驱动可以说是必须会的一种测试方式#xff0c;它既可以在纯代码的自动化程序中运行#xff0c;也可以在测试平台中使用。 使用纯代码方式时#xff0c;自动化工程师先写好一个通用的程序#xff0c;其他手工测试人员只需要把执行… 要做 ui 自动化测试使用关键字驱动可以说是必须会的一种测试方式它既可以在纯代码的自动化程序中运行也可以在测试平台中使用。 使用纯代码方式时自动化工程师先写好一个通用的程序其他手工测试人员只需要把执行的页面操作关键字填入到一个表格当中就可以执行自动化测试了。这个表格可以是 Excel 表格也可是 yaml 文件。 使用测试平台时测试开发工程会编写一个界面在假面中手工测试人员也可以选择需要操作的页面关键字选择完以后就可以执行自动化测试了。 关键字驱动实现成本低操作起来也方便真是个做 ui 自动化测试的好方式。本文介绍一种简单的关键字驱动实现方式不需要很高深的编程知识也能掌握。 关键字驱动实现主要分为三个部分 关键字方法的定义其实就是页面的通用操作比如点击、输入等常见操作由自动化测试工程师编写。关键字表格配置。谁编写自动化用例谁配置这个表格它主要定义用例需要执行的页面操作和测试数据最好通过脚本自动生成固定格式的文件并且把可以选择的操作名称说明方便使用 在测试平台中可以通过下拉框搜索和选择的方式选择会更加方便。调用关键字执行页面操作。这个也是由自动化测试工程师编写读取 yaml 文件中的页面操作并且执行。 定义关键字方法 如果要对 web 网页进行自动化测试我们可以定义 Page 类封装点击、输入等页面操作。 # keywords.py from selenium.webdriver.remote.webdriver import WebDriver from selenium.webdriver.remote.webelement import WebElement from selenium.webdriver.support import expected_conditions from selenium.webdriver.support.wait import WebDriverWaitDEFAULT_TIMEOUT 8class Page:def __init__(self, driver: WebDriver):self.driver driverdef goto(self, url):页面访问self.driver.get(url)def wait_clickable(self, locator, timeoutNone) - WebElement:timeout DEFAULT_TIMEOUT if timeout is None else timeoutwait WebDriverWait(self.driver, timeouttimeout)return wait.until(expected_conditions.element_to_be_clickable(locator))def wait_visible(self, locator, timeoutNone) - WebElement:timeout DEFAULT_TIMEOUT if timeout is None else timeoutwait WebDriverWait(self.driver, timeouttimeout)return wait.until(expected_conditions.visibility_of_element_located(locator))def click(self, locator):页面点击el self.wait_clickable(locator)el.location_once_scrolled_into_viewel.click()def fill(self, locator, words):页面输入el self.wait_visible(locator)el.send_keys(words) 复制代码 关键字表格 关键字表格是一个自动化用例的测试步骤和数据这里我们使用 yaml 文件action 表示要使用的页面操作它对应前面 Page 类中的同名方法 params 表示方法需要传入的测试参数。 每个不同的用例编写一个 yaml 文件当需要运行自动化测试时把 yaml 文件作为参数传入自动化程序中就可以了。 # login.yaml -action: gotoparams:url: https://petstore.octoperf.com/actions/Account.action?signonForm -action: fillparams:locator: [name, username]words: yuze -action: fillparams:locator: [name, password]words: 1234 -action: clickparams:locator: [name, signon] 复制代码 现在我也找了很多测试的朋友做了一个分享技术的交流群共享了很多我们收集的技术文档和视频教程。 如果你不想再体验自学时找不到资源没人解答问题坚持几天便放弃的感受 可以加入我们一起交流。而且还有很多在自动化性能安全测试开发等等方面有一定建树的技术大牛 分享他们的经验还会分享很多直播讲座和技术沙龙 可以免费学习划重点开源的 qq群号110685036 使用关键字操作浏览器 最后是通用的测试用例编写。定义一个 test_keyword 函数 首先读取 login.yaml 文件中的测试步骤和数据使用 getattr 方法 把需要调用的页面操作名称 goto, fill, click 传入获取 Page 类中的同名方法调用这些方法就能实现对应的自动化操作。 这些代码大多数不需要进行额外修改当需要运行不同的测试用例只需要修改 yaml 文件的名称调用不同的 yaml 测试步骤。 # test_login.pyimport yaml import pytest from selenium import webdriver from keyworks import Pagepytest.fixture def driver():d webdriver.Chrome()d.implicitly_wait(8)d.maximize_window()yield dd.quit()def test_keyword(driver):获取 yaml 文件with open(signin.yaml, encodingutf-8) as f:steps yaml.safe_load(f)page Page(driver)for step in steps:action_name step.get(action)params step.get(params)action getattr(page, action_name)action(**params) 复制代码 运行 现在我们只需要定义不同的 yaml 文件然后使用 pytest 这样的测试框架来运行自动化用例就可以。 但是作为一个简单版关键字驱动实现方式这个程序还有很多的优化空间。 比如现在编写多个 yaml 文件后还需要创建多个 python 的 test 文件。而更加常见的方式是可以通过命令行配置一个 yaml 文件我就可以运行该 yaml 文件的测试步骤。 配置多个 yaml 文件就可以运行多个 yaml 文件的测试步骤。甚至可以配置文件夹名称就运行文件夹下所有的 yaml 文件的测试步骤。 yaml 文件的生成也可以通过命令行生成。 这个我们在后面在实现目前来说我们至少已经知道关键字驱动的实现方式了。 敲字不易如果此文章对你有帮助的话点个赞收个藏给作者一个鼓励。也方便你下次能够快速查找。
http://www.w-s-a.com/news/812901/

相关文章:

  • 网页设计模板的网站黄埔营销型网站建设
  • 企业为什么要建立网站江苏高校品牌专业建设工程网站
  • 网站建设公司需要交税么福建省城乡建设厅网站
  • dedecms网站首页网站正在建设中 源码下载
  • 论坛网站有哪些怎么wordpress主题
  • 网站搭建中企动力第一返利的网站怎么做
  • 在哪网站可以做农信社模拟试卷优衣库网站建设的目的
  • 杭州网站建设ttmwl网络平台推广公司
  • 工作室网站技能培训班
  • 东丰网站建设万盛网站制作
  • 安徽黄山网站建设wordpress 公众号 获取密码
  • 自己电脑做网站模板腾讯网站建设分析
  • 如何增加网站反链虚拟主机 2个网站
  • 手机网站调用分享wordpress.org移除
  • 工业和信息化部网站备案系统查询市场调研表模板
  • 网站流量转化线下推广活动有哪些
  • 030159网站建设与维护宝安网站公司
  • 个人网站备案网站内容做gif表情包网站
  • 湖南省建设厅城乡建设网站怎么建立一个网站网址
  • 图书馆网站建设的规章制度免费个人主页注册
  • 表格网站源码wordpress更换网站域名
  • 芜湖做网站多少钱做公司的网站的需求有哪些
  • 玉溪网站建设制作凌风wordpress百度云
  • 专业建网站价格门户网站建设 请示
  • 安徽省省博物馆网站建设佛山公司网站设计
  • 温州专业营销网站公司网络建设规划
  • 做模型常说的d站是什么网站wordpress 繁體
  • 给网站做h5缓存机制获取小程序api
  • 网站开发文档东莞市建设网站首页
  • 公共空间设计网站企业门户网站建设教程