robotframework

github

Robot Framework ® 是一个通用的开源自动化框架,用于验收测试、验收测试驱动开发 (ATDD) 和机器人流程自动化 (RPA)。它具有简单的纯文本语法,并且可以使用通用和自定义库轻松扩展。

Robot Framework 独立于操作系统和应用程序。它使用Python实现,Python 也是扩展它的主要语言。该框架拥有丰富的生态系统,由作为独立项目开发的各种通用库和工具组成。有关 Robot Framework 和生态系统的更多信息,请参阅 http://robotframework.org

Robot Framework 项目托管在GitHub上,您可以在其中找到源代码、问题跟踪器和一些进一步的文档。下载托管在PyPI上。

Robot Framework 开发由非盈利组织 Robot Framework Foundation赞助。如果您正在使用该框架并从中受益,请考虑加入该基金会以帮助维护该框架并进一步开发它。

安装

如果你已经安装了带有pip 的Python,那么你可以直接运行:

pip install robotframework

# 根据需要安装其他库
pip install robotframework-ride
pip install robotframework-selenium2library

有关更详细的安装说明,包括安装 Python,请参阅 INSTALL.rst

Robot Framework 需要 Python 3.8 或更新版本,也可以在PyPy上运行。支持 Python 3.6 和 3.7 的最新版本是Robot Framework 6.1.1。如果您需要使用 Python 2、JythonIronPython,则可以使用Robot Framework 4.1.3

例子

下面是一个用于测试登录某个系统的简单示例测试用例。您可以从 http://robotframework.org找到更多示例以及相关演示项目的链接。

*** Settings ***
Documentation     A test suite with a single test for valid login.
...
...               This test has a workflow that is created using keywords in
...               the imported resource file.
Resource          login.resource

*** Test Cases ***
Valid Login
    Open Browser To Login Page
    Input Username    demo
    Input Password    mode
    Submit Credentials
    Welcome Page Should Be Open
    [Teardown]    Close Browser
*** Settings ***
Library  SeleniumLibrary

*** Variables ***
${URL}  https://www.example.com
${Username}  testuser
${Password}  password123

*** Test Cases ***
Login Test
    [Documentation]  This is a sample login test case
    Open Browser  ${URL}  Chrome
    Input Text  id=username  ${Username}
    Input Text  id=password  ${Password}
    Click Button  id=loginBtn
    Wait Until Page Contains Element  id=userProfile
    Close Browser

在上面的示例中,通过关键字Open Browser打开网页,然后输入用户名和密码并点击登录按钮,最后验证登录成功页面是否包含用户信息。

用法

测试(或任务)是使用命令从命令行执行的robot ,或者通过robot直接执行模块来执行python -m robot

基本用法是将测试(或任务)文件或目录的路径作为参数,并在路径前加上可能的命令行选项:

robot tests.robot
robot --variable BROWSER:Firefox --outputdir results path/to/tests/

此外,还有rebot用于合并结果和其他后处理输出的工具:

rebot --name Example output1.xml output2.xml

运行robot --helprebot --help获取有关命令行用法的更多信息。有关完整参考手册,请参阅Robot Framework 用户指南

文档

RIDE

RIDE是一款专门用来编辑Robot Framework用例的软件。

生成桌面的快捷方式: [Tools]--[Create RIDE Desktop Shortcut]

常用参数设置:[Tools]--[Preferences]

1) 可以通过F5来查找关键字, 找到关键字后可以看到关键字的功能描述与使用方法

2) 表格的第一列为关键字(即python中的函数). 通过Ctrl+Alt+Space快捷键可以快速查询关键字(大小写不敏感)

基本操作流程

创建一个项目: [File]--[New Project],type: Directory

在项目下创建一个测试集:[New Suite]

在测试集下创建一个测试用例: [New Test Case]