ruby做接口测试
一. 工具选择
IDE:rubymine;http接口请求:Unirest,ruby单元测试框架:rspec
二.工程创建
新建工程,在工程目录下,执行:rspec --init;初始化rspec工程

可以看到工程下生成了两个文件.rspec和spec/rspec_helper.rb
.rspec(用于命令行参数的配置)
rspec_helper.rb(用于rspec工程的全局公共的一些配置)
三.编写测试脚本(以天气查询接口为例)
rspec_helper.rb文件末尾中导入rspec,unirest的gems包,并定义参数导入方法
require 'unirest'
require 'rspec' def load_data(file)
load file
data
end
创建data.rb文件用于存放脚本中的参数
def data
@weather_host = 'https://www.sojson.com'
@beijing = '北京'
@hangzhou = '杭州'
end
创建测试文件weather_spec.rb(注意一定要以_spec为结尾,rspec默认是以这个来识别测试文件的)
describe '天气接口' do before(:all) do
load_data(__dir__+'/data.rb')
end it '查看北京天气' do
parameters = {city:@beijing}
response = Unirest.get(@douban_host+'/open/api/weather/json.shtml', parameters:parameters)
puts response.body
expect(response.body['city']).to match /北京/i
end it '查看杭州天气' do
parameters = {city:@hangzhou}
response = Unirest.get(@douban_host+'/open/api/weather/json.shtml', parameters:parameters)
puts response.body
expect(response.body['city']).to match /北京/i
end
end
这样一个简单的测试脚本就写好了
四.用例执行(类似于pycharm执行unittest)
- rubymine执行:
单个用例
或者

单个测试集(下图方法或者脚本中选到用例外的区域右键执行)

- 命令行执行
工程目录下,cmd执行rspec命令执行本所有用例,具体参数可以通过rspec -h查看
参数可以写到.rspec文件中去

这样就生成了rspec的测试报告(测试报告可以改源码自己优化或者jenkins集成的时候使用其他风格的报告)

五.注意点:
1.ruby安装时,设置环境变量(不然命令行下发有中文会认为是GBK编码,产生编码错误):
2.rubymine设置(不然返回结果有中文的时候,rubymine上执行结果显示出来是乱码的)

ruby做接口测试的更多相关文章
- Jsoup做接口测试
最早用Jsoup是有一个小的爬虫应用要写,发现Jsoup较HttpClient轻便多了,API也方便易懂,上手很快,对于response的Document解析的选择器用的是cssSelector(Jq ...
- jmeter做接口测试
jmeter做接口测试有两种方式: 1. 2.
- postman+jenkins+newman做接口测试的持续集成
为何要做接口自动化测试的持续集成? 1. 接口相对稳定,改动少,比起GUI自动化测试来说性价比更加高些,不容易出现GUI自动化那种掉到维护脚本的坑里. 2. 接口测试比较简单,一个规范的接口,测试只需 ...
- python接口自动化(二)--什么是接口测试、为什么要做接口测试(详解)
简介 上一篇和大家一起科普扫盲接口后,知道什么是接口,接口类型等,对其有了大致了解之后,我们就回到主题-接口测试. 什么是接口测试 接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统 ...
- 用Jmeter+Badboy+Fiddler做接口测试
用Jmeter+Badboy+Fiddler做接口测试 2016-12-05 目录: 1 简介2 Badboy录制3 Jmeter打开Badboy脚本4 用Fiddler抓请求,补充完善脚本5 测试中 ...
- 使用Robot Framework做接口测试
http://chuansong.me/n/1858477 1.RF框架 1.1 RF框架介绍Robot Framework 框架是一个通用的测试框架,一直是由诺西网络(Nokia Siemens N ...
- 用postman做接口测试实例
使用postman做接口测试,可以选择请求方式,可以直接输入参数和header,可以编写测试结果的代码,判断是否通过测试 下图为填写接口测试地址.填写接口的参数,点击send发送请求 其中,Param ...
- 使用postman做接口测试(一)
参考大神的总结:https://www.cnblogs.com/Skyyj/p/6856728.html 一,先了解一下基础知识,虽然工作中没什么卵用,但背会了,可以显摆自己很专业的样子,以下内容来自 ...
- postman 做接口测试
Postman 之前是作为Chrome 的一个插件,现在要下载应用才能使用. 以下是postman 的界面: 各个功能区的使用如下: 快捷区: 快捷区提供常用的操作入口,包括运行收藏夹的一组测试数据, ...
随机推荐
- python 类属性及限制
Student类本身需要绑定一个属性直接在class中定义属性,这种属性是类属性,归Student类所有:class Student(object): name = 'Student'类的所有实例都可 ...
- TortoiseGit基本操作
使用之前需要下载git for windows,tortoisegit . 1.TortoiseGit使用与操作 1.1克隆 打开一个要存放项目的文件夹下,右键Git Clone...进行克隆 弹出克 ...
- 小技巧:Mac下Metasploit渗透Oracle环境的搭建
Metasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,提供真正的安全风险情报.这些功能包括智能开发,密码审计, ...
- 使用Swagger处理Api的显示与隐藏
一.在SwaggerConfig.cs中配置如下: c.DocumentFilter<ShowApiFilter>(); c.DocumentFilter<HideApiFilter ...
- C#图解教程读书笔记(第9章 语句)
文件头的Using是Using指令,不是using语句 using (TextWriter tw = File.CreateText("xixi.txt")) { tw.Write ...
- 实用技巧:利用Excel实现客户档案的统一管理
背景: 一个朋友新开了家门市,生意不错,客源旺盛. 有次我们喝茶时,他透露一个问题,就是客户的档案管理很不理想,都是纸面的,很容易丢失,也不方便查找. 我自诩混迹IT界多年,当然要替好友解决这个小麻烦 ...
- list使用方法
转:https://www.cnblogs.com/epeter/p/5648026.html Java中对List集合的常用操作 目录: list中添加,获取,删除元素: list中是否包含某个元素 ...
- [19/03/31-星期日] IO技术_四大抽象类_字符流( 字符输入流 Reader、 字符输出流 Writer )(含字符缓冲类)
一.概念 Reader Reader用于读取的字符流抽象类,数据单位为字符. int read(): 读取一个字符的数据,并将字符的值作为int类型返回(0-65535之间的一个值,即Unicode ...
- 大数据-图表插件-echarts 样式修改(迭代)
修改折线图大小 myChart.setOption({ title:{ text:"价格指数" ...
- 4.spring:@Profile,AOP
Profile: 可以根据当前的环境,动态激活和切换一系列的组件功能 指定组件在那个环境下才能被注册到容器中,不指定任何环境下都能注册到 1.加了环境标识的bean只有环境激活的时候才能注册到容器中 ...