软件测试——自动化测试框架有哪些?

2023-11-14

目录

前言

一、Robot Framework

二、Pytest

三、UnitTest/PyUnit

四、Behave

五、Lettuce

结语


前言

自动化测试常用的Python框架有哪些?常用的框架有Robot Framework、Pytest、UnitTest/PyUnit、Behave、Lettuce。Pytest、Robot Framework和UnitTest主要用于功能与单元测试,Lettuce和Behave仅适用于行为驱动测试。

一、Robot Framework


Python测试框架之一,Robot Framework被用在测试驱动(test-driven)类型的开发与验收中。虽然是由Python开发而来,但是它也可以在基于.Net的IronPython和基于Java的Jython上运行。作为一个Python框架,Robot还能够兼容诸如Windows、MacOS、以及Linux等平台。


在使用Robot Framework(RF)之前,需要先安装Python 2.7.14及以上的版本。推荐使用Python 3.6.4,以确保适当的注释能够被添加到代码段中,并能够跟踪程序的更改。同时还需要安装Python包管理器--pip。

二、Pytest


适用于多种软件测试的Pytest,是另一个Python类型的自动化测试框架。凭借着其开源和易学的特点,该工具经常被QA(质量分析)团队、开发团队、个人团队、以及各种开源项目所使用。鉴于Pytest具有“断言重写(assert rewriting)”之类的实用功能,许多大型互联网应用,如Dropbox和Mozilla,都已经从下面将要提到的unittest(Pyunit)切换到了Pytest之上。


除了基本的Python知识,用户并不需要更多的技术储备。另外,用户只需要有一台带有命令行界面的测试设备,并且安装好了Python包管理器、以及可用于开发的IDE工具。

三、UnitTest/PyUnit


UnitTest/PyUnit一种标准化的针对单元测试的Python类自动化测试框架。基类TestCase提供了各种断言方法、以及所有清理和设置的例程。因此,TestCase子类中的每一种方法都是以“test”作为名词前缀,以标识它们能够被作为测试用例所运行。用户可以使用load方法和TestSuite类来分组、并加载各种测试。


可以通过联合使用,来构建自定义的测试运行器。正如我们使用Junit去测试Selenium那样,UnitTest也会用到UnitTest-sml-reporting、并能生成各种XML类型的报告。由于UnitTest默认使用了Python,因此我们并不需要什么先决条件。除了需要具备Python框架的基本知识,您也可以额外地安装pip、以及用于开发的IDE工具。

四、Behave


行为驱动开发是一种基于敏捷软件开发的方法。它能够鼓励开发人员、业务参与者和QA人员,三者之间的协作。Python测试框架Behave允许团队避开各种复杂的情况,去执行BDD测试。从本质上说该框架与SpecFlow和Cucumber相似,常被用于执行自动化测试。用户可以通过简单易读的语言来编写测试用例,并能够在其执行期间粘贴到代码之中。而且,那些被设定的行为规范与步骤,也可以被重用到其他的测试方案中。


任何具备Python基础知识的人都可以使用Behave。其他先决条件还包括:先安装Python 2.7.14及以上的版本。通过Python包管理器或pip来与Behave协作。大多数开发人员会选择Pycharm作为开发环境,当然您也可以选用其他的IDE工具。

五、Lettuce


Lettuce是另一种基于Cucumber和Python的行为驱动类自动化工具。Lettuce主要专注于那些具有行为驱动开发特征的普通任务。它不但简单易用,而且能够使得整个测试过程更流畅、甚至更有趣。安装带有IDE的Python 2.7.14、及以上的版本。当然,您也可以使用Pycharm或任何其他IDE工具。同时,您还需要安装Python包管理器。

下面是一份非常优质的学习资源,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上软件测试资料需要的可以斯❤我都可以免费获取

这还有一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中资料包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

学习不要孤军奋战,最好是能抱团取暖,相互成就一起成长,群众效应的效果是非常强大的,大家一起学习,一起打卡,会更有学习动力,也更能坚持下去。

结语

欢迎留言,或是关注我的专栏和我交流。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

软件测试——自动化测试框架有哪些? 的相关文章

  • 蓝桥杯单片机零基础到国二经验分享

    我参加的是第十三届蓝桥杯大赛 从最开始的零基础 毫无头绪 到拿下国二 颇有体会 在这里将我的备赛经验分享给大家 希望可以帮到一些正在备赛的蓝桥杯er 目录 一 蓝桥杯 单片机组介绍 二 零基础到国二历程 客观题 程序题 1 从零基础到省三
  • 前端DOM操作精解:基础概念、方法与最佳实践

    引言 本文将深入探讨前端开发中的DOM操作 包括基础概念 常用方法和最佳实践 通过清晰易懂的解释和实际案例分析 我们将一起了解如何最有效地使用DOM操作来提升前端应用的用户体验 一 DOM操作入门 在深入探讨DOM操作之前 我们先要理解什么

随机推荐

  • SpringBoot的默认日志框架

    logback日志的集成 总结 1 SpringBoot底层也是使用slf4j logback的方式进行日志记录 a logback桥接 logback classic 2 SpringBoot也把其他的日志都替换成了slf4j a log
  • flutter iOS和安卓的version,build区别

    iOS的version是关键的 build次数不重要 version要大于上一个 build叠加就好 version加1后 build可以从头开始 开发者后台提审的版本号要跟提交的版本号要一致 安卓的就不是了 最重要的是build次数 每次
  • 【算法】解密回文——栈

    上一节中我们学习了队列 它是一种先进先出的数据结构 还有一种是后进先出的数据结构它叫做栈 栈限定只能在一端进行插入和删除操作 比如说有一个小桶 小桶的直径只能放一个小球 我们现在向小桶内依次放入2号 1号 3号小球 假如你现在需要拿出2号小
  • URI、URL和URN的定义和关系

    1 URI URI Universal Resource Identifier 统一资源标志符 URI采用一种特定语法标识一个资源的字符串 所标识的资源可能是服务器上的一个文件 不过 也可能是一个邮件地址 新闻消息 图书 人名 Intern
  • PostgreSQL服务启动时报错:“FATAL: could not create lock file "/tmp/.s.PGSQL.5432.lock": Permission denied”

    PostgreSQL服务启动时报错 FATAL could not create lock file tmp s PGSQL 5432 lock 权限不够 PostgreSQL服务启动时报错 FATAL could not open loc
  • Linux一分钟部署dist

    1 首先保证服务器要有tomcat安装包 如果没有的话 访问http tomcat apache org 选择版本号下载 格式要tar gz的就可以 2 上传安装包并解压 3 运行 解压之后cd切到tomcat目录下面的bin目录 star
  • 关于vue多个项目的管理

    环境 vueCli webpack 应用场景 一套代码需要支持10几家客户 每家的皮肤 功能都有一些小的差异 主体流程大致是一样的 思路 在一个vue的服务中管理多个项目 各项目的功能模块相对独立 但公共部分可以提取为公共组件 并在多个项目
  • kafka相关

    1 为什么使用kafka 以实际业务中用户提现为例 比如一笔交易发生 这笔交易是否是欺诈交易 这笔交易是否已经达到限额了 相关用户是否在黑名单中 交易结果联动短信 Email等渠道通知用户 等等 也许一笔简单的交易 就要与反欺诈系统 黑名单
  • 华为交换机配置SSH远程登陆

    拓扑图 1 配置IP
  • 互联网摸鱼日报(2023-03-03)

    互联网摸鱼日报 2023 03 03 InfoQ 热门话题 在 Istio 中使用 Kata 容器注入工作负载 数字中国顶层设计来了 一图读懂 2522 框架 政策解读 探索 Android 14 首个开发者预览版的新功能与特性 深入银行数
  • T0、T1、TS、D1是什么鬼?一文看懂POS机刷卡到账模式区别和利弊

    经常被一些刚刚接触POS机的朋友问到一个 什么是T0 什么是T1 今天小敏子就和大家来探讨一下几种刷卡到账模式区别和利弊 一 先说一下定义 什么是T T为英文Trade交易的首字母 什么是D D为英文Day 天 的首字母 什么是S S为英文
  • Vue让router-view默认显示任意页面

    场景 一个home页面 点击左边的菜单栏 右边显示页面 因此都知道在右边放一个router view然后配置路由即可 然而问题出现在 重新打开的时候 默认是白色空的 那么解决办法是 在router管理的index js中 加上 redire
  • PHP源码1001PHP源码,某区块链养殖系统平台PHP源码无加密完整版,带充值接口+完整会员系统 可封装APP可二开...

    站长评测 对接的应该是码支付 源码没啥问题 有些功能还没开发完 适合二开 需要的朋友看看 1 只需用330元注册狗狗集市的一个游戏账户 就可以加入我们的大家庭了并可以获得戏猪的称号 第二天才会有收益 2 空闲之余呢您还可以去好友猪子圈里偷猪
  • 线性布局和相对布局的一些属性

    线性布局 LinearLayout orientation 属性是指定线性布局的排列方向 horizontal 水平 vertical 垂直 gravity属性是指定当前控件内容显示位置 left 左边 right 右边 top 上边 bo
  • SoundTouch实现音频变速变调

    音频基础 声音属性 响度 Loudness 音量 与声波的振幅有关 音调 Pitch 音调与声音的频率有关 声音频率越大时 音调就越高 否则就越低 音色 Quality 由物体结构特性所决定 A D转换 Analog to Digital
  • asp.net zero 8.2 学习-9-多租户设置,发送邮件配置

    学习在asp net zero系统中如何切换多租户及没有租户的设置 配置多租户 为实体添加TenantID 数据库迁移 修改DemoObjectAppService服务类的实体创建方法 配置邮件发送 创建租户 并添加数据测试 切换为无租户系
  • LeetCode 1034:边界着色

    问题描述 给你一个大小为 m x n 的整数矩阵 grid 表示一个网格 另给你三个整数 row col 和 color 网格中的每个值表示该位置处的网格块的颜色 将给定单元格 row col 的联通区域的边界着色成color 思路 DFS
  • 基于springboot+vue的学科竞赛项目管理系统【附源码】

    晚安独角兽 hello你好我是独角兽 很高兴你能来阅读 昵称是希望自己能不断精进 向着优秀程序员前行 博客来源于项目以及编程中遇到的问题总结 偶尔会有读书分享 我会陆续更新Java前端 后台 数据库 项目案例等相关知识点总结 感谢你的阅读和
  • web安全--文件包含实例操作

    文件包含分为LFI 本地文件包含 和RFL 远程文件包含 两种 文件包含的前提是服务器allow url openllow url include LFI 或者allow url open RFI 在owasp环境中可以在 etc php5
  • 软件测试——自动化测试框架有哪些?

    目录 前言 一 Robot Framework 二 Pytest 三 UnitTest PyUnit 四 Behave 五 Lettuce 结语 前言 自动化测试常用的Python框架有哪些 常用的框架有Robot Framework Py