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

Robot Framework 一个通用的 自动化测试框架

Robot Framework 是一个通用的 自动化测试框架,主要用于 验收测试(Acceptance Testing) 和 自动化测试(Test Automation),支持 关键字驱动(Keyword-Driven) 和 数据驱动(Data-Driven) 的测试方式。它广泛应用于 Web 自动化测试、API 测试、UI 测试、数据库测试、移动端测试 等领域。


1. Robot Framework 的主要特点

✅ 简单易用:使用自然语言(关键字)编写测试用例,非技术人员也能理解
✅ 高度可扩展:支持 Python、Java 等语言扩展,可集成 Selenium、Appium、Requests 等库
✅ 跨平台:支持 Windows、Linux、macOS
✅ 丰富的报告和日志:自动生成 HTML 报告,方便测试结果分析
✅ 支持数据驱动:可通过 Excel、CSV、数据库等方式管理测试数据


2. Robot Framework 的主要用途

(1) Web 自动化测试

  • 结合 SeleniumLibrary 进行 Web UI 自动化测试(如 Chrome、Firefox 浏览器测试)

  • 示例:

    *** Test Cases ***
    打开百度并搜索Open Browser    https://www.baidu.com    chromeInput Text      id=kw    Robot FrameworkClick Button    id=suSleep    2sClose Browser

(2) API 测试

  • 使用 RequestsLibrary 进行 HTTP 接口测试

  • 示例:

    *** Test Cases ***
    测试 GET 请求Create Session    api    https://jsonplaceholder.typicode.com${response}=    GET On Session    api    /posts/1Should Be Equal As Strings    ${response.status_code}    200

(3) 数据库测试

  • 使用 DatabaseLibrary 进行 MySQL、PostgreSQL 等数据库测试

  • 示例:

    *** Test Cases ***
    查询数据库Connect To Database    pymysql    mydb    user    password    localhost    3306${result}=    Query    SELECT * FROM users WHERE id=1Should Not Be Empty    ${result}

(4) 移动端测试

  • 结合 AppiumLibrary 进行 Android/iOS 自动化测试

(5) 桌面应用自动化

  • 使用 AutoItLibrary 或 WinAppDriver 进行 Windows 桌面应用测试


3. Robot Framework 的基本使用方式

(1) 安装 Robot Framework

pip install robotframework

(2) 安装常用库

pip install robotframework-seleniumlibrary  # Web 测试
pip install robotframework-requests         # API 测试
pip install robotframework-databaselibrary  # 数据库测试
pip install robotframework-appiumlibrary    # 移动端测试

(3) 编写测试用例(.robot 文件)

*** Settings ***
Library    SeleniumLibrary*** Test Cases ***
打开谷歌并搜索Open Browser    https://www.google.com    chromeInput Text      name=q    Robot FrameworkPress Keys      name=q    ENTERSleep           3sClose Browser

(4) 运行测试

robot test.robot

运行后会生成:

  • report.html(测试报告)

  • log.html(详细日志)


4. Robot Framework 的 Docker 使用方式

如果你使用 Docker,可以这样运行:

docker run --rm \-v $(pwd)/tests:/tests \-v /dev/shm:/dev/shm \ppodgorsek/robot-framework:latest \robot /tests/my_test.robot
  • -v $(pwd)/tests:/tests:挂载本地测试目录到容器

  • /dev/shm:用于 Chrome 浏览器测试(避免内存问题)


5. 常见问题

Q1: 为什么我的 Robot Framework 测试失败?

  • 浏览器驱动未安装(如 chromedriver 未配置)

  • 依赖库未安装(如 SeleniumLibrary 未安装)

  • 网络问题(如 Docker 容器无法访问 localhost

Q2: 如何调试 Robot Framework?

  • 使用 Log 关键字输出变量:

    Log    ${variable}
  • 查看 log.html 获取详细执行信息


总结

用途适用场景常用库
Web 测试浏览器自动化SeleniumLibrary
API 测试HTTP 接口测试RequestsLibrary
数据库测试SQL 查询验证DatabaseLibrary
移动端测试Android/iOS 自动化AppiumLibrary
桌面应用测试Windows 应用AutoItLibrary

Robot Framework 是一个强大且易用的测试工具,特别适合 自动化测试、回归测试、持续集成(CI/CD)。如果你刚开始使用,建议从 SeleniumLibrary(Web 测试) 或 RequestsLibrary(API 测试) 入手。

http://www.xdnf.cn/news/923365.html

相关文章:

  • 【DAY42】Grad-CAM与Hook函数
  • 大模型Agent智能体介绍和应用场景
  • SpiritTools:一款小而精的实用工具箱
  • nonlocal 与global关键字
  • BeckHoff--MES数据交互 MQ TRANCE API (MQ 追溯 API - 系统概述和命令参考)
  • YOLOv8 升级之路:主干网络嵌入 SCINet,优化黑暗环境目标检测
  • gawk 指令
  • NPOI Excel用OLE对象的形式插入文件附件以及插入图片
  • 元器件基础学习笔记——结型场效应晶体管 (JFET)
  • 实战二:开发网页端界面完成黑白视频转为彩色视频
  • 15-Oracle 23ai Vector Search Similarity Search-向量相似性和混合搜索-实操
  • Golang——10、日志处理和正则处理
  • 自制操作系统(五、重写引导部分和C语言的使用)
  • 【数据结构】详解算法复杂度:时间复杂度和空间复杂度
  • 【论文解读】DeepSeek-R1
  • 一款“短小精悍的”手机录屏软件
  • 【C++】类型转换
  • 抖音怎么下载视频?抖音怎么无水印下载别人的视频
  • 蓝凌的流程引擎队列分发器
  • Python whl安装包简介与制作完全指南
  • 【优选算法】前缀和
  • Windows 下端口占用排查与释放全攻略
  • LeetCode-413. 等差数列划分
  • Go深入学习延迟语句
  • 【QT】输入类控件 详解
  • 嵌入式里的时间魔法:RTC 与 BKP 深度拆解
  • 数据通信基础
  • 迷宫问题(一)(C++版本)
  • @ExceptionHandler 默认无法拦截 Aspect(切面)中抛出的异常
  • centos7编译安装LNMP架构