Robot Framework是一款python语言编写,通用的功能自动化测试框架。它使用了比较易用的表格数据语法,基于关键字驱动测试,主要用来验收测试和验收测试驱动开发(ATDD)。

本文主要介绍Robot Framework在python2.7环境下的安装及一个http接口自动化测试demo。

1.Robot Framework安装

1.1 Robot Framework

使用pip命令安装:

pip install robotframework

1.2 wxPython

wxPython是python下非常优秀的GUI图形库,这里安装是由于RIDE需要用到。

特别强调下,RIDE GUI目前必须要用wxPython 2.8.12.1版本。

原文如下:

"RIDE's GUI is implemented using wxPython toolkit. Only wxPython 2.8.12.1 with Unicode support is officially supported. Possible new releases in wxPython 2.8 series ought to work fine too. wxPython 3.0 support is one of the priorities for future development."

下载地址:http://sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1/

百度网盘地址:http://pan.baidu.com/s/1dFc8M1z

1.3 Robot framework-ride

RIDE是一个图形界面的用于创建、组织、运行测试的软件。

使用pip命令安装:

pip install robotframework-ride

1.4 robotframework-httplibrary

看名字就知道,这是Robot Framework的内部HTTP测试库。

使用pip命令安装:

pip install robotframework-httplibrary

2. http接口自动化测试demo

2.1 运行RIDE

windows环境下打开命令提示符cmd,输入ride.py进入RIDE界面,如下

2.2 新建测试项目

FILE->NEW Project新建测试项目,可以填写项目名称、选择路径

2.3 导入http库

我们需要导入httplibrary库,选择Library,填写http库名称HttpLibrary.HTTP

2.4 新建测试用例

选择测试项目demo,右键New Test Case,填写测试用例名称

2.5 编写测试用例

每个库提供的API都不一样,我们可以在RIDE中按F5快捷键打开Search Keywords进行查找,这样可以获取API关键词的名称,参数及文档介绍。

也可相关库的官方网站查看相关API及demo,如httplibrary库:

http://peritus.github.io/robotframework-httplibrary/HttpLibrary.html

参考官方提供的demo,我们编写一个简单的HTTP Get请求页面返回302后的跳转测试用例:

https://github.com/peritus/robotframework-httplibrary/#usage

测试流程解析如下:

新建http请求后发送Get /302请求,判断返回结果;然后进行页面跳转并验证页面是否包含"generating different HTTP codes"字符。

2.6 执行测试用例

在RIDE页面,按F8快捷键执行测试,可以看到执行结果为pass,同时生成了三个结果文件

2.7 查看测试结果

在RIDE页面,按CTRL+R快捷键查看测试报告Report,CTRl+L查看测试日志Log

至此我们使用Robot Framework框架,跑完了一个http接口的自动化测试demo,很简单浅显,后续根据实际使用情况再继续更新。

3. 参考:

http://robotframework.org

Robot Framework自动化测试框架初探的更多相关文章

  1. 三年磨一剑,robot framework 自动化测试框架核心指南,真正讲透robot framework自动化测试框架(笔者新书上架)。

    序 关于自动化测试的工具和框架其实有很多.自动化测试在测试IT行业中扮演着越来越重要的角色,不管是在传统的IT行业还是高速发展的互联网行业或是如今的大数据和大热的人工智能领域,都离不开测试,也更加离不 ...

  2. Robot Framework自动化测试框架核心指南-如何使用Java编写自定义的RobotFramework Lib

    如何使用Java编写自定义的RobotFramework Lib 本文包括2个章节 1. Robot Frdamwork中如何调用java Lib库 2.使用 java编写自定义的Lib 本文作者为: ...

  3. Robot Framework自动化测试框架核心指南-如何做好自动化测试平台框架的设计

    自动化测试如果需要能高效快速的支撑软件项目的测试,项目的快速迭代以及上线,除了以上我们介绍的需要许多的Lib来支持以及需要高效的去编写自动化测试案例外,还需要一个好的自动化测试框架平台来支撑我们的自动 ...

  4. 基于python3环境下搭建Robot Framework 自动化测试框架(一)

    大家都知道,Robot Framework 是基于python2 环境 的一套自动化测试工具,据说python 2 到2020年不维护,现在用python 3 的环境搭建Robot Framework ...

  5. 学习使用Robot Framework自动化测试框架-web元素定位

    转:http://blog.csdn.net/u012145166/article/details/50342569 1.name和id 其中使用到了name和id定位.但有时候由于开发人员的疏忽或者 ...

  6. Robot Framework自动化框架搭建的步骤

    我把自己之前搭建Robot Framework自动化测试框架的步骤整理了一下,感兴趣的同学可以参考一下.   Robot Framework自动化测试框架+ 可视化编辑工具RIDE+Selenium2 ...

  7. Robot Framework自动化测试环境准备(一)

    Robot framework是诺西(NSN)开源的一套自动化测试工具,在通信设备自动化测试中很实用,它基于Python开发,主要模拟NMS网管配置数据到网元NODE,并读取配置看配置是否生效. == ...

  8. Robot Framework自动化测试的应用

    Robot Framework自动化测试的应用(一) 最近尝试用Robot Framework代替之前全部采用python实现测试case,开始对Robot Framework进行些了解学习. 1. ...

  9. Robot Framework 自动化测试

    Robot Framework 自动化测试 RIDE 是 Robot Framework 测试数据的编辑器.它使测试用例的创建.运行.测试项目的组织可以在图形界面下完成. 通过 RIDE 去学习和使用 ...

随机推荐

  1. python 浅析模块

    今天买了一本关于模块的书,说实话,模块真的太多了,小编许多也不知道,要是把模块全讲完,可能得出本书了,所以小编在自己有限的能力范围内在这里浅析一下自己的见解,同时讲讲几个常用的模块. 首先说一下对模块 ...

  2. 软件测试的cookie测试

    1.什么是cooike测试 Cookie是指网站用于辨别身份,进行会话(session)跟踪而存储在客户端的数据.它是有服务器产生并发送给客户端的.其用途是提供一个方便的功能以简化用户输入,节省访问页 ...

  3. Vue.js项目模板搭建

    前言 从今年(2017年)年初起,我们团队开始引入「Vue.js」开发移动端的产品.作为团队的领头人,我的首要任务就是设计 整体的架构 .一个良好的架构必定是具备丰富的开发经验后才能搭建出来的.虽然我 ...

  4. Failed to load the JNI shared library "XXXXXXX"

    今天启动Eclipse的时候出现了这个问题,经过查找, 一般来说这种问题都是因为eclipse 和Java 的兼容性不一致所导致的. 1) 查看Eclipse 和Java 版本 那么我们需要分别查看下 ...

  5. Jenkins定时任务

    Jenkins配置定时任务 选中Job名称--配置—构建触发器—勾选“Build periodically” 如图中配置所示:该任务每天上午7点定时执行一次. 官方说明翻译 MINUTE HOUR D ...

  6. js 操作数组(过滤对应数据)

    过滤掉相应数据 var fileList = { "85968439868a92": [{name: 'food.jpeg'}, {name: 'ood.jpeg'}], &quo ...

  7. Invoke 用法

    转自:http://blog.sina.com.cn/s/blog_5a6f39cf0100s23x.html 在多线程编程中,我们经常要在工作线程中去更新界面显示,而在多线程中直接调用界面控件的方法 ...

  8. "svn: E155010: 提交失败"问题解决

    习惯于通过命令行操作svn,今天如往常一样提交代码: AnnytekiMacBook-Air:weiyibao Anny$ svn ci -m "code" 居然报错,如下: sv ...

  9. 在asp.net web api 2 使用 Serilog 记录日志

    Serilog是.net里面非常不错的记录日志的库,另外一个我认为比较好的Log库是NLog. 在我个人的asp.net web api 2 基础框架(Github地址)里,我原来使用的是NLog,但 ...

  10. hdu1524博弈SG

    A Chess Game Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Tot ...