自动化测试 RobotFramework安装以及使用教程

简介: 自动化测试 RobotFramework安装以及使用教程

安装教程

安装python,基于已安装好的python3.9版本教程

大家百度安装一下就行啦


安装Robot Framework

Robot Framework是一个基于Python的,可扩展的关键字驱动的测试自动化框架,用于端到端验收测试和验收测试驱动开发(ATDD)。


官网下载地址:https://github.com/robotframework/robotframework/releases/


下载的是4.0.3版本的zip文件。解压缩zip文件后,在cmd命令行窗口解压出来的目录下

9a89f90348ac462bb22e40cbcb134aeb.png


打开cmd命令窗口执行命令:python setup.py install


安装wxPython

wxPython是用于支持Python图形化界面的,安装它主要是用来运行RIDE的。


官方下载地址:https://pypi.org/project/wxPython/

Cmd命令执行:pip install wxPython


安装robotframework-ride

RIDE是一个可视化界面工具,专用于编写测试用例。


官方下载地址:https://github.com/robotframework/RIDE/releases


下载的是2.0b2.dev3版本的(1.7.4.2版本不支持,会闪退,升级就可以了。但是在cmd上输入pip install --update robotframework-ride进行升级,升级失败报错)。推荐使用在cmd上输入以下命令下载。


命令:pip install -U https://github.com/robotframework/RIDE/archive/master.zip


查看安装结果:pip list命令

bccffc413fd64943b65bc3604987d284.png


安装完成后桌面没有exe执行文件?

1、鼠标在空白桌面右击,新建,新建快捷方式,我命名为RIDE

2、在弹出层填写D:\software\Python\python3.9.6\python.exe -c"from robotide import main; main()"

注意:Python位置更改为自己的安装位置

7efab82914e04aa08bdca1fdcd231b6e.png

a779eda24d54468296962ef73c61c733.png


使用教程

RF基本功能

RF基本功能-设置区介绍
项目 --》settings----》Document:添加用例说明
suit setup:执行此测试套件的前置操作,如初始化数据等。
suit TearDown:执行此测试套件结束后的操作,如恢复数据等。
Setup:执行用例的前置操作
Test TearDown:执行用例结束后的操作。
Force Tags:用例标签。(选择运行的标志 run--》Only run tests with these tags)
TimeOut:设置每一个测试案例的超时时间,超过这个时间就会失败,并停止案例运行
Template:测试模板,可以指定某个关键字为这个测试套件下所有TestCase的模板,这样所有的TestCase就只需要设置这个关键字的传入参数即可。
Arguments:传入参数(New User Keyword使用)
Return Value:返回值(New User Keyword使用)
RF基本功能-引用区
Add Library:加载测试库,主要是你python\Lib\site-packages里的测试库
Add Resource:加载资源,主要是你工程相关的资源文件
Add Variable:加载变量文件
RF基本功能-参数区
Add Scalar:定义变量
Add List:定义列表型变量
Add Dict:定义字典
RF基本功能-数据区
Add Metadata:元数据,作用是在report和log里显示定义好的内容,格式和document一样。(report-点击用例集-测试用例,可以看到,相当于对用例组的描述)

创建项目 new project ; Directory类型的

a95677c8572c4934a78ecfb13af0f856.png


在项目中创建模块(它是测试用例的载体) New Directory

f4470a39e13942878e09f35a5a01030f.png

06596006f8414c4bac37b3789515b3fc.png


创建测试套件(New Suite)

注意:选择file类型

93d46ead6fe54494a2c5c86f99903391.png

06e70659a6d54ba5ac96305a66195817.png


创建测试用例(New Test Case)

3868d9dc4acd46e7b914bb01aa3c6a53.png

f61fad06b59848fcbf35923f884bce1d.png


创建资源文件New Resource 自定义关键字的载体

注意:txt文件类型

b5b49486e61e43b59b004a150196288a.png

a59858a3589a4268aeaf91cd67f4d500.png


创建自定义关键字(new user keyword)

a98eed5204ec404ab256d81ac4dd6b90.png

213fb5f5f9de44c7baf56ba6e18e3f05.png


RF基本架构

26dffd821f9e4bada6cc17ff063dd510.png


RobotFramework常用类库

标准库:不需要安装,直接用,RF自带

Buitini(测试库) 
Collections(集合库) 
Date Time(时间库) 
ScreenShot(截屏库)


扩展库:需要通过pip安装库

web自动化测试:SeleniumLibrary,Selenium2Library,Selenium2Library for java 
接口自动化测试:RequestsLibrary 
APP自动化测试:AppiumLibrary


安装方式:

pip install robotframework-seleniumlibrary==3.0.0 
pip install robotframework-requests 
pip install robotframework-appiumlibrary


RobotFramework常用关键字

快捷键的掌握


1.搜索:F5

2.自动补全:Ctrl+Shift+空格

关键字使用


329c035e9447418ca5125fb7081ccff7.png


将一下信息复制到Text Edit内容当中

*** Test Cases ***
测试用例01
    Log    1.自动化测试
    Comment    2.设置变量
    ${a}    Set Variable    88
    Log    ${a}
    Comment    3.获取系统时间
    ${times}    Get Time
    Log    ${times}
    Comment    4.睡眠时间,强制等待
    Sleep    5
    Comment    5.字符串的拼接
    ${str}    Catenate    aaa    bbb    ccc    ddd
    Log    ${str}
    Comment    6.创建列表
    ${list1}    Create List    1    2    3
    Log    ${list1}
    @{list1}    Create List    4    5    6
    Log Many    @{list1}
    Comment    7.创建字典
    ${dic}    Create Dictionary    name=一个小浪吴呀    age=88
    Log    ${dic}
    Comment    8.执行内置方法
    ${random_number}    Evaluate    random.randint(1,101)    modules=random
    Log    ${random_number}
    ${timess}    Evaluate    time.time()    modules=time
    Log    ${timess}
    Comment    9.执行python中if方法
    ${age}    Set Variable    20
    Run Keyword If    ${age}>18    Log    成年了,可以上网
    ...    ELSE IF    14<${age}<18    Log    未成年,不能上网
    ...    ELSE    Log    你还小,不能变坏哦
    ${age}    Set Variable    15
    Run Keyword If    ${age}>18    Log    成年了,可以上网
    ...    ELSE IF    14<${age}<18    Log    未成年,不能上网
    ...    ELSE    Log    你还小,不能变坏哦
    Comment    10.执行python中for循环
    FOR    ${aa}    IN    1    2    3    4
        Log    ${aa}
    END
    FOR    ${bb}    IN    ${list1}
        Log    ${bb}
    END
    FOR    ${cc}    IN RANGE    1    10
        Run Keyword If    ${cc}==6    Exit For Loop
        Log    ${cc}
    END

1aacc6e40b3146068f2768ee48264366.png


运行查看效果

066ea2dc55a841baa89ff972d4bcf464.png


以上就完成啦!


相关文章
|
29天前
|
运维 关系型数据库 MySQL
os-copilot安装_配置_功能测试全集
我是一位中级运维工程师,我平时工作会涉及到 各类服务器的 数据库 与 java环境配置 操作。 我顺利使用了OS Copilot的 -t -f | 功能,我的疑惑是不能在自动操作过程中直接给与脚本运行权限,必须需要自己运行一下 chmod 这个既然有了最高的权限,为什么就不能直接给与运行权限呢。 我认为 -t 功能有用,能解决后台运行基础命令操作。 我认为 -f 功能有用,可以通过task文件中撰写连续任务操作。 我认为 | 对文件理解上有很直接的解读,可以在理解新程序上有很大帮助。
164 86
|
25天前
|
弹性计算 Ubuntu Java
OS-Copilot-ubuntu镜像版本的具体测试使用(安装方式有单独注明)
作为一名个人开发者,我主要负责云资源的运维和管理。在使用OS Copilot的过程中,我遇到了一些配置问题,特别是在ECS实例中设置AccessKey时,但最终成功解决了。通过使用OS Copilot的-t/-f/管道功能,我大大提升了效率,减少了命令编写的工作量,特别是在搭建Java运行环境时效果显著。此外,| 功能帮助我快速理解文档,整体体验非常流畅,推荐给其他开发者使用。
38 6
|
30天前
|
弹性计算 运维 Ubuntu
os-copilot在Alibaba Cloud Linux镜像下的安装与功能测试
我顺利使用了OS Copilot的 -t -f 功能,我的疑惑是在换行的时候就直接进行提问了,每次只能写一个问题,没法连续换行更有逻辑的输入问题。 我认为 -t 管道 功能有用 ,能解决环境问题的连续性操作。 我认为 -f 管道 功能有用 ,可以单独创建可连续性提问的task问题。 我认为 | 对文件直接理解在新的服务器理解有很大的帮助。 此外,我还有建议 可以在非 co 的环境下也能进行连续性的提问。
70 7
|
3月前
|
关系型数据库 MySQL Java
【Docker最新版教程】一文带你快速入门Docker常见用法,实现容器编排和自动化部署上线项目
Docker快速入门到项目部署,MySQL部署+Nginx部署+docker自定义镜像+docker网络+DockerCompose项目实战一文搞定!
|
4月前
|
自然语言处理 机器人 Python
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
ChatPaper是一个基于文本生成技术的智能研究论文工具,能够根据用户输入进行智能回复和互动。它支持快速下载、阅读论文,并通过分析论文的关键信息帮助用户判断是否需要深入了解。用户可以通过命令行或网页界面操作,进行论文搜索、下载、总结等。
107 1
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
|
3月前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
97 1
|
4月前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
【10月更文挑战第1天】告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
119 4
|
4月前
|
测试技术 PHP 开发工具
php性能监测模块XHProf安装与测试
【10月更文挑战第13天】php性能监测模块XHProf安装与测试
51 0
|
1月前
|
数据可视化 前端开发 测试技术
接口测试新选择:Postman替代方案全解析
在软件开发中,接口测试工具至关重要。Postman长期占据主导地位,但随着国产工具的崛起,越来越多开发者转向更适合中国市场的替代方案——Apifox。它不仅支持中英文切换、完全免费不限人数,还具备强大的可视化操作、自动生成文档和API调试功能,极大简化了开发流程。
|
5天前
|
JSON 前端开发 测试技术
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡
43 10
大前端之前端开发接口测试工具postman的使用方法-简单get接口请求测试的使用方法-简单教学一看就会-以实际例子来说明-优雅草卓伊凡