Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >robotframework快速入门

robotframework快速入门

原创
作者头像
sabergo
发布于 2019-02-21 11:48:59
发布于 2019-02-21 11:48:59
2.3K0
举报
文章被收录于专栏:itsoeasyitsoeasy

安装依赖

wxpython 跨平台的GUI工具集 下载

代码语言:txt
AI代码解释
复制
pip install wxpython
pip install robotframework
pip install robotframework-requests
pip install robotframework-ride #
不支持python3,如果使用python3安装会出错
pip install robotframework-databaselibrary  
pip install robotframework-mongodblibrary  
pip install robotframework-selenium2library 
pip install robotframework-seleniumlibrary  

一个类似于IDE的工具,它是由Python开发的, 使用的wxPython GUI包,所以要安装RIDE要首先安装wxPython. 在window上安装wxPython很简单,从如下网站下载安装包安装就可以了。但是有一点需要注意的是,这里要使用32位的安装包,否则ride无法运行。

安装包下载地址:https://sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1/

启动ride

代码语言:txt
AI代码解释
复制
python PATH-TO-PYTHON\scripts\ride.py

支持ssh

代码语言:txt
AI代码解释
复制
需要安装paramiko,而paramiko又依赖pycrypto,而这个pycrypto如果在windows安装有需要vs10以上的环境,但是幸运的是有已经编译好
http://www.voidspace.org.uk/python/modules.shtml#pycrypto
里面选在对应python版本的pycrypto文件

我使用如下连接,对应python2.7 64bit版本
http://www.voidspace.org.uk/downloads/pycrypto26/pycrypto-2.6.win-amd64-py2.7.exe

接着安装 pip install pamariko
安装完之后再python的命令行import paramiko报错
from bcrypt import _bcrypt
ImportError: DLL load failed: %1 不是有效的 Win32 应用程序。

如果遇到这个问题,有可能你是基于python32bit升级到64bit原地升级导致,最稳健的方法是铲掉原来python目录,重新来,或者回退到32bit,这时之前选择wxpython以及pycrypto需要回退到32bit才可以,知道可以正常导入paramiko

如果不是windows系统,直接使用pip install pycrypto来安装即可

接着安装sshlibrary来支持远程命令控制
pip install robotframework-sshlibrary

SSHLibrary官方api

使用明文密码建立SSH连接

代码语言:txt
AI代码解释
复制
    open connection    127.0.0.1
    ${output}    login    zhangsan    123456
    should contain    ${output}    Last login
    close connection

使用密钥建立SSH连接

代码语言:txt
AI代码解释
复制
    open connection    127.0.0.1
    ${output}    login with public key    root    id_rsa_train.txt
    should contain    ${output}    Last login
    close connection

执行远端命令

代码语言:txt
AI代码解释
复制
    open connection    127.0.0.1
    ${output}    login with public key    root    id_rsa_train.txt
    should contain    ${output}    Last login
    ${output}    execute command    grep -i -c " iNFO " /path-to-tomcat/catalina.out
    should be equal as integers    ${output}    657655
    close connection

vscode插件 (按需使用,如果使用了ride就可以不用)

Robot Framework Intellisens

关键语法

代码语言:txt
AI代码解释
复制
robot my_tests.robot your_tests.robot
robot --name Example path/to/tests/pattern_*.robot

错误

安装问题

代码语言:txt
AI代码解释
复制
wxPython not found.
You need to install wxPython 2.8.12.1 with unicode support to run RIDE.
wxPython 2.8.12.1 can be downloaded from http://sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1/

发现python27的版本是32,所以需要重新安装python64位版本

使用

导入库

导入库, 标红表示库导入问题,其实就是import操作

注意导入库,除了在项目中有,还有testsuite也有

语法

build in 库

databaselibrary

系列课程

  1. robot Framework--07 变量的声明、赋值及其使用

变量

Scalar变量用 $ 作为标识符,List型变量用 @ 作为标识符

这里需要区分list变量跟不同变量,尤其是在for循环中

操作dict成员

代码语言:txt
AI代码解释
复制
要这么写:dict['Title']
而不是:dict.Title
是你操作字典的方法错误了

发送post请求 实例

代码语言:txt
AI代码解释
复制
*** Settings ***
Library           requests
Library           RequestsLibrary
Library           Collections
Library           DatabaseLibrary

*** Test Cases ***
TestCGIHeartBeat
    [Documentation]    *Test CGI Heartbeat*
    [Tags]    post
    # Post请求
    ${header}    create dictionary    Content-Type    application/json
    create session    api    http://140.143.230.148:8080/cgi-bin/heartbeat    ${header}
    ${data}    create dictionary
    ${resp}    post request    api    ${data}
    log    ${resp.content}
    ${resp_data}    to json    ${resp.content}
    should be equal as integers    ${resp_data['code']}    0

发送复杂的post请求

代码语言:txt
AI代码解释
复制
    ${header123}    create dictionary    Content-Type    application/json
    create session    api    http://140.143.230.148:8080/cgi-bin    headers=${header123}
    ${body_string}    set variable    { "bot_instance_id":"2420568e-47fa-11e8-a13a-6c92bf26dfc6", "query":"信用卡还款", "access_channel_code":"default", "max_res_num":100, "session_id":"stanley12", "extended_data": { "ip": "127.0.0.1", "age": 20, "name": "stanley" } }
    ${body}=    to json    ${body_string}
    ${resp}    post request    api    /search/out    data=${body}
    log    ${resp}
    ${resp_data}    to json    ${resp.content}
    should be equal as integers    ${resp_data['code']}    0

连接mongodb

需要安装pymongodb和 robotframework-mongodblibrary,rf导入库名字为MongoDBLibrary

代码语言:txt
AI代码解释
复制
    connect to mongodb    mongodb://tencent:tencent@127.0.0.1/bot_cloud_gray    ${mongo_db_port}
    ${count}    Get MongoDB Collection Count    bot_cloud_gray    bot_collection_
    log    ${count}
    ${allResult}    Retrieve Some Mongodb Records    bot_cloud_gray    bot_collection_    {"bot_id":46}
    log    ${allResult}
    disconnect from mongodb

数据类型转换

有两种方式,一种是使用convert to 系列函数

另一种如果用在断言中的,should be equal as 系列

代码语言:txt
AI代码解释
复制
    should be equal as integers     ${resp_data['code']}    0

命令行启动

robot --include smoke --name Smoke_Tests path/to/tests.robot

robot --include smoke --name aibot_smoke -d ./aibot_test_result ./aibot/heartbeat.txt

资源文件

资源文件

自动集成

jenkins

http://mirrors.jenkins-ci.org/plugins/robot/

robotframework-自动化测试-实例11

错误

代码语言:txt
AI代码解释
复制
Error in test library 'pymysql': Creating keyword 'Connect' failed: Keyword with same name defined multiple times.

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Robot Framework测试框架用例脚本设计方法
Robot Framework是一个通用的关键字驱动自动化测试框架。测试用例以HTML,纯文本或TSV(制表符分隔的一系列值)文件存储。通过测试库中实现的关键字驱动被测软件。Robot Framework灵活且易于扩展。它非常适合测试有不同接口的复杂软件:用户接口、命令行,Web服务,专有的编程接口等。
顾翔
2020/08/11
2.9K0
Robot Framework测试框架用例脚本设计方法
自动化测试 RobotFramework-ride使用相关总结
说明:为了方便的使用robot命令,安装好robotframwork后,修改系统环境,添加robot.exe(PYTHON_HOME/Scripts/robot.exe)所在路径到系统环境变量path
授客
2024/11/21
2760
自动化测试 RobotFramework-ride使用相关总结
RobotFramework工具试用
Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD)。使用Apache License 2.0,由Robot Framework Foundation开发和赞助。Robot Framework被广泛地使用在端到端的验收测试中,生态体系非常丰富,更详细的信息可以参看http://robotframework.org。
用户6859632
2020/01/05
2.9K0
【连载一】:RobotFrameWork环境搭建(基于HTTP协议的接口自动化)
接着上一篇《RobotFramework框架系统课程介绍》,本篇主要介绍一下在基于RobotFramework框架开展接口自动化前,前期的环境如何搭建,正所谓”工欲善其事,必先利其器“!
测试开发技术
2020/01/17
8520
【连载一】:RobotFrameWork环境搭建(基于HTTP协议的接口自动化)
在培训机构也学不到的Robot Framework自动化测试企业级实战教程
大家好,我是洋子,今天给大家分享一下Robot Framework自动化测试框架的使用教程,Robot Framework是一个可扩展、关键字驱动的测试自动化框架,可用于做接口、UI自动化,并且可以使用 Python 或者Java 去编写测试用例依赖的lib库,是一款非常强大的测试框架
Bug挖掘机
2022/09/28
1.8K0
在培训机构也学不到的Robot Framework自动化测试企业级实战教程
Robotframework第1课--安装RF
大家好,我是孟船长,现从事自动化测试的工作,工作用的工具就是Robotframework,现在把这“几年”的所得分享出来,希望新进入这行的朋友能够少吃点“新人苦”,能够早点入手robot framework(RF)的自动化测试工作。 使用RF前应该知道RF是用Python语言开发的,而且只支持Python2.X版本的Python。在我的讲解中,使用的是Python2.7.13版本。所以,现在你应该告诉自己,要想用好RF,一定要会点Python,至于会到什么程度,就要看你的工
孟船长
2018/05/18
1.4K0
【新梦想干货】RobotFramework环境搭建步骤
RobotFramework作为公司能快速落地实现UI自动化测试的一款框架,同时也非常适合刚入门自动化测试的朋友们去快速学习自动化,笔者计划通过从搭建逐步到完成自动化测试的过程来整体描述它的使用。
新梦想IT职业教育
2019/12/16
1.5K0
【新梦想干货】RobotFramework环境搭建步骤
使用Robot Framework框架远程操作UNIX系统
bot Framework是一个强大的自动化测试框架,依靠社区力量编写的Test Library为它提供了非常强的扩展性。下面我将介绍的就是如何使用第三方提供的扩展测试库(Test Library)来远程登录Unix,并在上面做常见操作。
叉叉敌
2022/03/11
9840
聊一聊:Robot Framework被误会多年的秘密
今天我们主要聊一聊,Robot Framework被误会多年的秘密。经常也会到许多同行,在拿Robot Framework与Pytest或其它同类测试框架作对比,我认为这个对比本质上是没有任何意义的,萝卜白菜、各有所爱,只有找到适合,并能用较低成本就能解决当前团队面临的问题,这才是关键所在。
测试开发技术
2020/03/26
1.4K0
RobotFramework基础篇-环境搭建
Robotframework(通常简称RF,在下文中都将用RF代替)是一个关键字驱动的自动化测试框架,底层是基于Python语言实现的。具有以下特性:
小博测试成长之路
2021/03/06
9030
自动化测试框架Robot Framework - 简介、安装部署、启动RIDE
Robot Framework是一款Python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD)。
wangmcn
2022/07/26
4.7K0
自动化测试框架Robot Framework - 简介、安装部署、启动RIDE
聊一聊:Robot Framework被误会多年的秘密
今天我们主要聊一聊,Robot Framework被误会多年的秘密。经常也会到许多同行,在拿Robot Framework与Pytest或其它同类测试框架作对比,我认为这个对比本质上是没有任何意义的,萝卜白菜、各有所爱,只有找到适合,并能用较低成本就能解决当前团队面临的问题,这才是关键所在。
博文视点Broadview
2020/06/11
9480
怎么样导入RobotFramework 自定义关键字(库文件)
第一步:在D:/python/Lib/site-packages 建立库文件文件夹 MyLibrary
IT小马哥
2020/03/18
1.9K0
robotframework 学习(1) : 环境搭建,RIDE 快捷方式创建
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Mokwing
2020/09/08
1.7K1
RF框架(二)_ 开发工具RIDE介绍
Robot Framework是通用的开源自动化框架。它可以用于测试自动化和Robot过程自动化(RPA)。
Java架构师必看
2021/03/22
1.9K0
RF框架(二)_ 开发工具RIDE介绍
RobotFramework实战篇-HTTP协议接口自动化实战
本次练习使用的项目地址:http://8.129.162.225:8082/swagger-ui.html
小博测试成长之路
2021/03/08
7830
RobotFramework实战篇-HTTP协议接口自动化实战
python+robotframework实现接口自动化测试(二)
今天分享的内容是使用python+robotframework在执行接口测试用例过程中以及安装robotframework过程中,需要注意的点有哪些【截图中红色标注的文字需要仔细阅读】。都是之前遇到过的一些坑点总结,希望对大家有帮助。
Wu_Candy
2022/07/04
8150
python+robotframework实现接口自动化测试(二)
Robot Framework 安装配置
Robot Framework 最新基于 Windows+Python3 的安装方式,是时候卸载掉 Python2 了!
顾翔
2020/08/11
2.6K0
Robot Framework 安装配置
Root Framework中的变量与常量
Robot Framework中的层级关系为:测试项目 > 测试套件 > 测试用例
zx钟
2020/04/27
1.2K0
Robot Framework安装及常见问题解决
官方下载地址:https://www.python.org/downloads/windows/
吾爱乐享
2019/12/30
2.1K0
Robot Framework安装及常见问题解决
推荐阅读
相关推荐
Robot Framework测试框架用例脚本设计方法
更多 >
LV.1
腾讯移动开发工程师
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档