问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Robot Framework自动化测试框架入门指南

创作时间:
作者:
@小白创作中心

Robot Framework自动化测试框架入门指南

引用
CSDN
1.
https://blog.csdn.net/seanyang_/article/details/137360817

Robot Framework(RF)是一个基于Python的自动化测试框架,广泛应用于验收测试驱动开发(ATDD)、行为驱动开发(BDD)和机器人流程自动化(RPA)。本文将带你从零开始,了解如何使用Robot Framework进行自动化测试。

什么是RF

RF是一个基于 Python 的、可扩展的关键字驱动的自动化 验收测试框架、验收测试驱动开发 (ATDD)、 行为驱动开发 (BDD) 和机器人流程自动化 (RPA)。它 可用于分布式、异构环境,其中自动化 需要使用不同的技术和接口。

该框架周围有一个丰富的生态系统,由各种通用 作为单独项目开发的库和工具。查看更多 有关机器人框架和生态系统的信息,请参阅 http://robotframework.org。

为什么使用RF?

  • 支持易于使用的表格语法,以便在统一的环境中创建测试用例 道路。
  • 提供从 现有关键字。
  • 以 HTML 格式提供易于阅读的结果报告和日志。
  • 独立于平台和应用程序。
  • 提供用于创建自定义测试库的简单库 API 可以使用 Python 本地实现。
  • 提供命令行界面和基于 XML 的输出文件 集成到现有的构建基础架构中(持续集成 系统)。
  • 为测试 Web 应用程序、rest API、移动应用程序提供支持 运行进程,通过 Telnet 或 SSH 连接到远程系统等。
  • 支持创建数据驱动的测试用例。
  • 内置对变量的支持,特别适用于测试 不同的环境。
  • 提供标记以对要执行的测试用例进行分类和选择。
  • 实现与源代码管理的轻松集成:测试套件只是文件 以及可以使用生产代码进行版本控制的目录。
  • 提供测试用例和测试套件级别的设置和拆卸。
  • 模块化架构支持创建测试,甚至对于具有 几种不同的接口。

环境准备

  1. 安装python
  2. 虚拟环境中安装robotframework
cd C:\projects
mkdir MyProject
cd MyProject
python -m venv .venv
.venv\Scripts\activate.bat
pip install robotframework
robot --version
  1. PyCharm安装插件
  • Robot Framework Language Server
  • 为 Robot Framework 添加调试配置以运行当前测试套件
  • 添加 Robot Framework 的调试配置以运行当前测试用例(通过选定的文本)
  1. 安装库文件
pip install --upgrade robotframework-seleniumlibrary
  1. 下载浏览器驱动,放置python路径的Scripts目录下。

运行用例

方法一

使用配置的run testsuite按钮。

方法二

点击在测试文件里左侧的按钮,这里的按钮其实也是插件配置出的按钮。

运行后可以看到测试结果,并生成了html格式的测试报告。

项目结构

Test Suites 可以组织在一个或多个robot文件里,可以放在tests/文件夹下

resources资源文件,里面存放的是可重复使用的keywords,可以是robot文件或py文件,可以放在resources文件夹下,如

  • common.resource:存放一般的关键字,如Login/Logout,导航
  • search.robot:跟查询有关的关键字
  • util.py:python相关的关键字

libraries常用的python关键字库,可以存放在libraries/文件夹下,某些项目会区分libraries和resources,有些不会。如

my_project
├── tests
│ ├── suiteA.robot
│ ├── suiteB.robot
│ ├── ...

├── resources
│ ├── common.resource
│ ├── some_other.resource
│ ├── custom_library.py
│ ├── variables.py
│ ├── ...

├── .gitlab-ci.yml
├── .gitignore
├── README.md
├── requirements.txt

执行用例

$ robot --pythonpath . tests

一些项目还会有data文件,存放测试数据
my_project
├── tests
│ ├── authentication
│ │ ├── login.robot
│ │ ├── ...
│ │
│ ├── master-data
│ │ ├── customers.robot
│ │ ├── products.robot
│ │ ├── ...
│ │
│ ├── order
│ │ ├── order_creation.robot
│ │ ├── order_processing.robot
│ │ ├── ...

├── resources
│ ├── common.resource
│ ├── search.resource
│ ├── master-data
│ │ ├── customers.resource
│ │ ├── products.resource
│ │ ├── ...
│ │
│ ├── ...

├── data
│ ├── master-data
│ │ ├── customers.py
│ │ ├── products.py
│ │ ├── ...
│ │
│ ├── order
│ │ ├── order_creation.yaml
│ │ ├── order_processing.yaml
│ │ ├── ...

├── .gitlab-ci.yml
├── .gitignore
├── README.md
├── requirements.txt

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号