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

做企业网站10万起步辽宁省建设工程信息网盲盒系统

做企业网站10万起步,辽宁省建设工程信息网盲盒系统,企业网站建设的调研,微信小程序可以做音乐网站吗8.8.1 自动化测试模型概述 在自动化测试运用于测试工作的过程中,测试人员根据不同自动化测试工具、测试框架等所进行的测试活动进行了抽象,总结出线性测试、模块化驱动测试、数据驱动测试和关键字驱动测试这4种自动化测试模型。 线性测试 首先&#…

8.8.1 自动化测试模型概述

在自动化测试运用于测试工作的过程中,测试人员根据不同自动化测试工具、测试框架等所进行的测试活动进行了抽象,总结出线性测试、模块化驱动测试、数据驱动测试和关键字驱动测试这4种自动化测试模型。

  • 线性测试

首先,我们一起来看下使用Bing搜索APP来搜索“于涌 loadrunner”的操作步骤。打

开Bing搜索应用后,会出现一个引导界面,单击“跳过”按钮,如图8-196所示。

图8-196   跳过按钮及对应的ID相关属性信息

       然后,单击搜素框,如图8-197所示。

图8-197   搜索框及对应的ID相关属性信息

       而后,在出现的搜索文本框输入“于涌 loadrunner”搜索词,如图8-198所示。

图8-198   搜索文本框及对应的ID相关属性信息

       最后,单击“全部”按钮,如图8-199所示。

图8-199   全部按钮及对应的ID相关属性信息

       上述过程的脚本代码,如下所示:

from appium import webdriver
import time
caps = {
    'platformName': 'Android',
    'deviceName': '127.0.0.1:62001',
    'platformVersion': '5.1.1',
    'appPackage': 'com.microsoft.bing',
    'appActivity': 'com.microsoft.clients.bing.app.MainActivity'
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', caps)
#
单击跳过按钮
driver.find_element_by_id('com.microsoft.bing:id/skip_text').click()
#
等待1秒钟,目的让后续元素能够显示出来再操作
time.sleep(1)
#
单击搜索框
driver.find_element_by_id('com.microsoft.bing:id/search_box').click()
#
等待1秒钟,目的让后续元素能够显示出来再操作
time.sleep(1)
#
向搜索文本框输入查询的搜索词内容
driver.find_element_by_id('com.microsoft.bing:id/search_text_field').send_keys('于涌 loadrunner')
#
单击“全部”按钮
driver.find_element_by_id('com.microsoft.bing:id/opal_as_web').click()

通过自动化测试工具录制或者编写脚本的时候,按照业务操作步骤产生的相应线性脚本,

每个脚本相对独立,不依赖于其他脚本。在前面章节我们写的脚本基本都是线性脚本,不知道大家有没有发现这样的脚本存在什么问题呢?是的,这种类型的脚本结构清晰明了,但脚本代码相对冗长。举个例子:假设要在Bing搜索,搜索2次关键词,那么每次都有定位元素重复性的脚本代码,如下所示。

from appium import webdriver
import time
caps = {
    'platformName': 'Android',
    'deviceName': '127.0.0.1:62001',
    'platformVersion': '5.1.1',
    'appPackage': 'com.microsoft.bing',
    'appActivity': 'com.microsoft.clients.bing.app.MainActivity'
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', caps)
#
单击跳过按钮
driver.find_element_by_id('com.microsoft.bing:id/skip_text').click()
#
等待1秒钟,目的让后续元素能够显示出来再操作
time.sleep(1)
#
单击搜索框
driver.find_element_by_id('com.microsoft.bing:id/search_box').click()
#
等待1秒钟,目的让后续元素能够显示出来再操作
time.sleep(1)
#
向搜索文本框输入查询的搜索词内容
driver.find_element_by_id('com.microsoft.bing:id/search_text_field').send_keys('
于涌 loadrunner')
#
单击“全部”按钮
driver.find_element_by_id('com.microsoft.bing:id/opal_as_web').click()

#等待2秒,让大家看到搜素后的结果信息
time.sleep(2)
#
单击“返回”按钮,参见图8-200所示
driver.find_element_by_id('com.microsoft.bing:id/opal_toolbar_back').click()
#
等待1秒钟,目的让后续元素能够显示出来再操作
time.sleep(1)
#
单击搜索框
driver.find_element_by_id('com.microsoft.bing:id/search_box').click()
#
等待1秒钟,目的让后续元素能够显示出来再操作
time.sleep(1)
#
向搜索文本框输入查询的搜索词内容
driver.find_element_by_id('com.microsoft.bing:id/search_text_field').send_keys('
于涌 Appium')
#
单击“全部”按钮
driver.find_element_by_id('com.microsoft.bing:id/opal_as_web').click()

      

图8-200   返回按钮及对应的ID相关属性信息

大家不难发现,每进行一次搜索都有至少4行重复性代码。那么如果我们要搜索10个关键词,就会有40行重复性元素定位、操作的代码。

  • 模块化驱动测试

模块化驱动测试借鉴了编程语言的思想,将一些经常使用的重复性代码给封装成类或者放到一个公共模块封装为函数,方便业务脚本调用它们,而减少冗余代码。

这里同样给大家举一个例子,就是将搜索的重复性过程封装到一个公共模块写到函数里,代码如下所示。

comm.py文件:

import time
def searchkey(driver,kw):
    #
等待1秒钟,目的让后续元素能够显示出来再操作
    time.sleep(1)
    #
单击搜索框
    driver.find_element_by_id('com.microsoft.bing:id/search_box').click()
    #
等待1秒钟,目的让后续元素能够显示出来再操作
    time.sleep(1)
    #
向搜索文本框输入查询的搜索词内容
    driver.find_element_by_id('com.microsoft.bing:id/search_text_field').send_keys(kw)
    #
单击“全部”按钮
    driver.find_element_by_id('com.microsoft.bing:id/opal_as_web').click()

ys_modularization.py文件:

from appium import webdriver
from comm import searchkey
import time
caps = {
    'platformName': 'Android',
    'deviceName': '127.0.0.1:62001',
    'platformVersion': '5.1.1',
    'appPackage': 'com.microsoft.bing',
    'appActivity': 'com.microsoft.clients.bing.app.MainActivity'
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', caps)
#
单击跳过按钮
driver.find_element_by_id('com.microsoft.bing:id/skip_text').click()
searchkey(driver,'
于涌 loadrunner')
#等待2秒,让大家看到搜素后的结果信息
time.sleep(2)
#
单击“返回”按钮
driver.find_element_by_id('com.microsoft.bing:id/opal_toolbar_back').click()
#
等待1秒钟,目的让后续元素能够显示出来再操作
time.sleep(1)
searchkey(driver,'
于涌 Appium')

       结合上面两个脚本,作者将搜索的重复性过程封装到comm.py文件。封装了一个名称为searchkey()的函数,包含3条元素定位、操作语句和1条睡眠语句。而后在业务测试脚本testscript.py文件导入comm模块的searchkey函数。只需调用2次searchkey函数就执行了先前8条语句的内容,可以看出封装后,代码量明显减少。

       当然除了将重复代码封装成公共函数以外,还可以使用PageObject设计模式将页面元素和操作封装成类进行调用,这个内容作者将在“PageObject设计模式”章节进行详细讲解。它也属于模块化驱动测试。

用ChatGPT做软件测试

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

相关文章:

  • 网站用户 分析wordpress教程 迅雷
  • 网站建设买服务器还是数据库保定网站优化排名
  • 站长之家查询网站wordpress 中文主题
  • 网站 网页区别是什么小游戏网页版在线玩
  • 什么行业做网站多百度文档怎么免费下vvv
  • 做网站对客户有什么帮助一个前端页面多少钱
  • 网站建设 科技公司公司网站建设的基本流程
  • 网站项目规划与设计河北大城县网站建设公司
  • 做网站过时了官方网站欣赏
  • 网站建设文化机构排行榜哪个网站最好
  • 怎么做网站链接的快捷方式php成品网站超市
  • 营销网站制作皆选ls15227负责网站上线前准备方案
  • 网站标题的关键字怎么写wordpress充值插件
  • 网站海外推广平台十大免费行情软件在线观看
  • 呼和浩特做网站的地方网站模板打包下载
  • 四川网站建设 旋风天长网站开发
  • 天津企业网站建设价格wordpress英文变成中文
  • 网站开发工资多少钱一个月网站换主推关键词会怎么样
  • 网站图标怎么下载怎样做浏览的网站不被发现
  • 制作网站建网站怎样装修公司网站
  • 网站商城建设6win7 iis默认网站设置
  • 徐州市城乡建设局官方网站模板之家怎么免费下载
  • 磐安做网站南昌中企动力做的网站怎么样
  • 服装设计网站哪个好微信小程序是干什么用的
  • 建设网站公司兴田德润官方地址网站建设优化及推广
  • 烟台网站排名优化公司最新网站建设的模板下载
  • 济南网站建站公司采购管理系统软件
  • 服务器做网站教程电销系统外呼软件
  • 做本地网站要服务器吗wordPress主题模板站
  • 郑州cms建站模板如何做交易网站