RobotFramework框架系列 – 介绍篇

2024-06-21 13:08

本文主要是介绍RobotFramework框架系列 – 介绍篇,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

RobotFramework是一个基于Python语言的,可扩展的关键字驱动的自动化测试框架,用于验收驱动的测试(ATDD)

Robotframework除了自带的库之外有很多扩展的库,这些库可以在Robotframework官网里找到http://robotframework.org/#Libraries

你也可以到github搜索,肯定有所收获。

为何使用RobotFramework

  • 表格的方式创建测试用例

  • 创建high-level的可重用的关键字

  • 强大易读的html格式的报告及log,精确到你每个步骤的时间点

  • 各平台通用,包括windows,mac,linux

  • 提供简单创建自定义库的方式,可以使用自带API,使用python或java语言实现自定义库

  • 提供命令行执行接口,和方便的xml报告输出,方便集成到CI中,比如jenkins

  • 提供丰富的扩展库,比如网页测试的Selenium,Java GUI,Ssh 。。。

  • 虽然是关键字驱动的框架,但是同样不可或缺的也要支持数据驱动的测试【Data-Driven Test】

  • 提供内置的变量,适用不同的测试环境

  • 提供强大的标签功能,来归类测试运行,在测试运行时可以选择不同的Tag或tag组合进行测试运行

  • 提供测试用例和测试套件级别的Setup和tearDown。而且可以全局,可以局部覆盖,非常方便。

  • 模块化体系结构支持创建测试,即使是具有多种不同接口的应用程序。
  • 支持乱序执行,可以多样化执行策略
  • 支持报告合并,以便让你可以多机执行,然后合并报告
  • 全局测试超时时间设置,局部可以覆盖全局的设置非常方便,不会测试卡壳

 

测试框架结构

测试用例大概就是如下这样子的

*** Settings ***

Test Setup MetaSetup

Test Teardown Close All Browsers #关闭所有浏览器

Test Timeout 6 minutes

Resource MetaPortalBusiness.robot

 

*** Test Cases ***

1. Verify Portal Login Success

[Tags] META

Open chrome browser ${WEB_HOST}

Input username ${CS_NAME}

Input password ${CS_PWD}

Login button

 

2. Verify Portal Login And Video

[Tags] META

Login normal

Wait switch to video

Verify has video

 

测试结果:

 

其他Python环境的安装方式:

Jython,用java做库的方式需要这种,首先安装Jython java -jar jython_installer-<version>.jar.,http://jython.org,安装后把jython加入PATH环境变量中

jython -m ensurepip
jython -m pip install robotframework

 

IronPython

.Net platform可以和c#或.net语言沟通的API,仅仅支持IronPython2.7

ipy -X:Frames -m ensurepip
ipy -X:Frames -m pip install robotframework

 

PyPy下安装

pypy -m ensurepip
pypy3 -m ensurepip

pypy -m pip install robotframework

pypy3 -m pip install robotframework

 

安装方式:

# Install the latest version
pip install robotframework
# Upgrade to the latest version
pip install --upgrade robotframework
# Install a specific version
pip install robotframework==2.9.2
# Install separately downloaded package (no network connection needed)
pip install robotframework-3.0.tar.gz
# Uninstall
pip uninstall robotframework
# Install 3.0 beta 1
pip install robotframework==3.0b1# Upgrade to the latest version even if it is a pre-release
pip install --pre --upgrade robotframework

验证安装

rebot --version有正确版本号输出

运行:

命令行语法格式:

robot [options] data_sources
python|jython|ipy -m robot [options] data_sources
python|jython|ipy path/to/robot/ [options] data_sources
java -jar robotframework.jar [options] data_sources

RFT3.0以前的使用pybot,jybot,ipybot来执行,执行方式类似

比如我们的测试基于

pybot --variable MUT1:XXX --include=TAGGS -d testreport_Dir TestDir

如果想执行某一些测试,可以指定文件或目录执行如下:

robot tests.robot
robot path/to/my_tests/
robot c:\robot\tests.robot

也可以同时执行多个文件或目录,也支持通配符执行

robot my_tests.robot your_tests.robot
robot --name Example path/to/tests/pattern_*.robot

这篇关于RobotFramework框架系列 – 介绍篇的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1081313

相关文章

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

Spring 框架之Springfox使用详解

《Spring框架之Springfox使用详解》Springfox是Spring框架的API文档工具,集成Swagger规范,自动生成文档并支持多语言/版本,模块化设计便于扩展,但存在版本兼容性、性... 目录核心功能工作原理模块化设计使用示例注意事项优缺点优点缺点总结适用场景建议总结Springfox 是

c++中的set容器介绍及操作大全

《c++中的set容器介绍及操作大全》:本文主要介绍c++中的set容器介绍及操作大全,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录​​一、核心特性​​️ ​​二、基本操作​​​​1. 初始化与赋值​​​​2. 增删查操作​​​​3. 遍历方

HTML img标签和超链接标签详细介绍

《HTMLimg标签和超链接标签详细介绍》:本文主要介绍了HTML中img标签的使用,包括src属性(指定图片路径)、相对/绝对路径区别、alt替代文本、title提示、宽高控制及边框设置等,详细内容请阅读本文,希望能对你有所帮助... 目录img 标签src 属性alt 属性title 属性width/h

Python的端到端测试框架SeleniumBase使用解读

《Python的端到端测试框架SeleniumBase使用解读》:本文主要介绍Python的端到端测试框架SeleniumBase使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全... 目录SeleniumBase详细介绍及用法指南什么是 SeleniumBase?SeleniumBase

MybatisPlus service接口功能介绍

《MybatisPlusservice接口功能介绍》:本文主要介绍MybatisPlusservice接口功能介绍,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录Service接口基本用法进阶用法总结:Lambda方法Service接口基本用法MyBATisP

MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)

《MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)》掌握多表联查(INNERJOIN,LEFTJOIN,RIGHTJOIN,FULLJOIN)和子查询(标量、列、行、表子查询、相关/非相关、... 目录第一部分:多表联查 (JOIN Operations)1. 连接的类型 (JOIN Types)

java中BigDecimal里面的subtract函数介绍及实现方法

《java中BigDecimal里面的subtract函数介绍及实现方法》在Java中实现减法操作需要根据数据类型选择不同方法,主要分为数值型减法和字符串减法两种场景,本文给大家介绍java中BigD... 目录Java中BigDecimal里面的subtract函数的意思?一、数值型减法(高精度计算)1.

Pytorch介绍与安装过程

《Pytorch介绍与安装过程》PyTorch因其直观的设计、卓越的灵活性以及强大的动态计算图功能,迅速在学术界和工业界获得了广泛认可,成为当前深度学习研究和开发的主流工具之一,本文给大家介绍Pyto... 目录1、Pytorch介绍1.1、核心理念1.2、核心组件与功能1.3、适用场景与优势总结1.4、优

Java实现本地缓存的常用方案介绍

《Java实现本地缓存的常用方案介绍》本地缓存的代表技术主要有HashMap,GuavaCache,Caffeine和Encahche,这篇文章主要来和大家聊聊java利用这些技术分别实现本地缓存的方... 目录本地缓存实现方式HashMapConcurrentHashMapGuava CacheCaffe