Skip to main content

Hybrid Robot

Project description

Hybrid Robot

基于 RobotFramework 的二次封装

注意

该方案是对 RobotFramework 的二次封装,以减轻中国用户使用符合欧美用户习惯的原生 RobotFramework 时的不适,因此,该方案并不适合所有场景。针对技术能力暂时薄弱、英文能力差的中小团队,可能具有一定的疗效。

org License author author Python PyPI

重点改造描述

  • 用 Excel 取代 .robot 文件进行测试用例的编写
  • 增加命令行脚手架工具,一键初始化测试项目,不需要额外学习如何自己搭建目录结构
  • 精简固化用法,高级用法被封装隐藏
  • 集成 Allure 测试报告框架
  • 检测到系统为非 Windows/Mac 系统时,将增加环境变量 HROBOT_BROWSER_MODE=headless,Chrome 将不启动图形界面
  • 安装时会集成常用于测试场景的 Python 库,如: requests, selenium, paramiko

快速开始

安装

pip install hrobot

执行 hrobot 检查

hrobot
  init     初始化项目目录
  run      执行测试用例
  debug    调试测试用例,支持选择用例集、测试用例、标签
  report   生成并展示测试报告
  version  显示版本信息

初始化测试用例项目

使用 hrobot init 初始化项目目录

hrobot init 
  -p    project  定义一个测试项目目录的名称

进入到项目目录中后,文件树接口如下:

<projectName>
├── testcases
│   └── suites.xlsx
├── keywords
│   └── keywords.xlsx
└── variables
    └── variables.xlsx

PS: keywords 暂无实际作用

编写测试用例

通过 Excel 打开 testcases 目录中的 suite.xlsx 文件,有 5 个 Sheet,每个 Sheet 有自己的表头:

  • 用例

  • 变量

  • 前置

  • 后置

  • 可用关键字

例子:


A B C D E F G H
1 用例标题 标签 用例描述 关键字库 关键字 参数
2 SSH远程后再调用 HTTP 接口

远程 执行 root password whoami
3


接口 GET https://xxx/api/info {"Content-Type":"application/json"}
4 HTTP 接口请求后断言

接口 POST https://xxx/api/products {"Content-Type":"application/json {"project_owner":"jing"}
5


接口 响应.断言 status_code 等于 200
6


接口 响应.断言 body.data.0.name 等于 hrobot
7 HTTP 返回值获取

接口 POST https://xxx/api/login {"Content-Type":"application/json"} {"username":"jing"}
8


接口 响应.取值 body.token AUTH
9


接口 GET https://xxx/api/info {"Content-Type":"application/json","Authorization":"${AUTH}"}
10


接口 响应.断言 status_code 等于 200
11


接口 响应.断言 body.username 等于 jing

执行用例

cd <projectName>
hrobot run

生成报告

hrobot report

定义变量

变量有三个级别:用例、用例集、全局,均可以在测试用例的 Excel 编写中通过关键字定义。

除此之外,也可以在用例集的 Excel 的 "变量" Sheet 中提前定义好用例集级别的变量。

全局变量还可以在 variables 目录下的 Excel 中定义,该处定义的全局变量会在报告的环境信息段落中展现。

自定义关键字

  • 待设计

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hrobot-0.7.0.tar.gz (24.2 kB view details)

Uploaded Source

Built Distribution

hrobot-0.7.0-py3-none-any.whl (23.6 kB view details)

Uploaded Python 3

File details

Details for the file hrobot-0.7.0.tar.gz.

File metadata

  • Download URL: hrobot-0.7.0.tar.gz
  • Upload date:
  • Size: 24.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.1

File hashes

Hashes for hrobot-0.7.0.tar.gz
Algorithm Hash digest
SHA256 837c34689c26c0db53f6a3f84d2a59b7437fbbf1a1e5842fcd7350e70d834440
MD5 852a6d15aac92b439493e730068bc98d
BLAKE2b-256 8a2c3a1877769eca96d2fe50c7b9828510335dfa82b0326bf90a5ba6a0cf1939

See more details on using hashes here.

File details

Details for the file hrobot-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: hrobot-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 23.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.1

File hashes

Hashes for hrobot-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fe4039bd7c38db6332995ce32cd5be8e0b88d16779d78320b0855d0d53ecefe3
MD5 c0c56458d9efa30c694f3ad7d086f319
BLAKE2b-256 9b8ecd758b174888e15caf49338714c2d900eb11c04ab2f61060eb61597fd142

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page