成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > Ruby配置rspec和RestClient來(lái)檢測(cè)服務(wù)器

Ruby配置rspec和RestClient來(lái)檢測(cè)服務(wù)器

熱門標(biāo)簽:地圖標(biāo)注賺錢項(xiàng)目注冊(cè) 湖州u友防封電銷卡 白銀外呼paas系統(tǒng) 電銷機(jī)器人廠商代理 百度地圖標(biāo)注自定義圖片 徐州網(wǎng)絡(luò)外呼系統(tǒng)哪個(gè)好 高德地圖標(biāo)注客服 常德電銷平臺(tái)外呼系統(tǒng)軟件價(jià)格 滴滴外呼系統(tǒng)

如果你手工測(cè)試Restful 服務(wù)將會(huì)是一件非常單調(diào)乏味的事情。當(dāng)然,目前有一些瀏覽器插件可以通過(guò)可視化的界面幫助你手工測(cè)試,例如postman、rest console,但是每次系統(tǒng)版本更新,你都需要去手動(dòng)執(zhí)行大量的測(cè)試,顯然這種方式不是非常實(shí)用。Ruby擁有許多出色的gem包,你可以使用它們完成這項(xiàng)枯燥的工作。其中RestClient是我比較喜歡的一個(gè)。結(jié)合ruby的rspec框架使用RestClient可以編寫非常強(qiáng)大的測(cè)試腳本。假如Github想讓你測(cè)試他們的Restful API。你可能想做的第一件事就是確保端點(diǎn)返回你預(yù)計(jì)的響應(yīng)代碼。開始前,你需要確認(rèn)你已經(jīng)安裝了相應(yīng)的gems。 最便利的方式是使用bundler安裝:

 source "https://rubygems.org"

 gem 'rest-client'
 gem 'rspec'
 gem 'json_expressions'

在cmd(windows,linux/mac環(huán)境請(qǐng)自行解決)進(jìn)入你創(chuàng)建gemfile文件的同層目錄,運(yùn)行 'bundle'

rafs-computer:rafael$ bundle
Using diff-lcs 1.2.5
Using json_expressions 0.8.3
Using mime-types 2.3
Using netrc 0.7.7
Using rest-client 1.7.2
Using rspec-support 3.1.1
Using rspec-core 3.1.4
Using rspec-expectations 3.1.2
Using rspec-mocks 3.1.2
Using rspec 3.1.0
Using bundler 1.7.3
Your bundle is complete!

現(xiàn)在讓我們來(lái)驗(yàn)證我們從用戶終端得到200響應(yīng):

require 'rspec'
require 'rest_client'

describe 'GitHub API' do
  
  it 'should return information about a user' do 
    result = RestClient.get 'https://api.github.com/users/rest-client', :content_type => :json, :accept => :json
    expect(result.code).to eq(200)
  end

end

在命令行執(zhí)行rspec -f doc filename

因此返回碼是對(duì)的,但是我們?nèi)绾沃婪祷氐膉son也是對(duì)的呢?

有幾種不同的方式去驗(yàn)證。一種方法是解析body中的json(由key,value組成),然后針對(duì)你要檢查的每個(gè)key創(chuàng)建斷言。這種方式可以使用,但是它需要你寫多個(gè)斷言而且是比較難于維護(hù)的。另外一種方法是和一個(gè)已知有效的json格式的數(shù)據(jù)文件比較。你可以使用json_expressions gem包去做這個(gè)事情。下面的例子是相同的spec文件。新增一個(gè)testcase用來(lái)驗(yàn)證json數(shù)據(jù)。

首先準(zhǔn)備一個(gè)users.json文件

{
 "login": "rest-client",
 "id": 2386701,
 "avatar_url": "https://avatars.githubusercontent.com/u/2386701?v=3",
 "gravatar_id": "",
 "url": "https://api.github.com/users/rest-client",
 "html_url": "https://github.com/rest-client",
 "followers_url": "https://api.github.com/users/rest-client/followers",
 "following_url": "https://api.github.com/users/rest-client/following{/other_user}",
 "gists_url": "https://api.github.com/users/rest-client/gists{/gist_id}",
 "starred_url": "https://api.github.com/users/rest-client/starred{/owner}{/repo}",
 "subscriptions_url": "https://api.github.com/users/rest-client/subscriptions",
 "organizations_url": "https://api.github.com/users/rest-client/orgs",
 "repos_url": "https://api.github.com/users/rest-client/repos",
 "events_url": "https://api.github.com/users/rest-client/events{/privacy}",
 "received_events_url": "https://api.github.com/users/rest-client/received_events",
 "type": "Organization",
 "site_admin": false,
 "name": "REST-Client Team",
 "company": null,
 "blog": "",
 "location": null,
 "email": null,
 "hireable": false,
 "bio": null,
 "public_repos": 1,
 "public_gists": 0,
 "followers": 0,
 "following": 0,
 "created_at": "2012-09-20T15:01:43Z",
 "updated_at": "2015-03-11T19:08:01Z"
}

然后編寫測(cè)試用例spec文件

require 'rspec'
require 'rest_client'
require 'json_expressions/rspec'


describe 'GitHub API' do

 it 'should return 200 when asking information about a user' do
  result = RestClient.get 'https://api.github.com/users/rest-client', :content_type => :json, :accept => :json
  expect(result.code).to eq(200)
 end

 it 'should return proper data for a user' do
  expected_data = JSON.parse(IO.read('users.json'))
  result = RestClient.get 'https://api.github.com/users/rest-client', :content_type => :json, :accept => :json
  expect(result).to match_json_expression(expected_data) 
 end

end

這個(gè)users.json文件包含了一個(gè)已知的響應(yīng)。正如你可能猜到了,一些這樣的服務(wù)返回值可以改變很快。例如,"updated_at"是返回值可能經(jīng)常變化的key。假如你只是想要驗(yàn)證key是否存在,而不關(guān)心它的值,你可以增加如下的代碼到你的測(cè)試用例中。

it 'should return proper data for a user' do
  expected_data = JSON.parse(IO.read('users.json')) #解析users.json文件中的數(shù)據(jù)作為預(yù)期值 
  result = RestClient.get 'https://api.github.com/users/rest-client', :content_type => :json, :accept => :json
  # expect(result).to match_json_expression(expected_data) 
  expected_data['updated_at'] = wildcard_matcher
 end

標(biāo)簽:梧州 遼寧 張家界 普洱 公主嶺 永州 荊門 三沙

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Ruby配置rspec和RestClient來(lái)檢測(cè)服務(wù)器》,本文關(guān)鍵詞  Ruby,配置,rspec,和,RestClient,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Ruby配置rspec和RestClient來(lái)檢測(cè)服務(wù)器》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Ruby配置rspec和RestClient來(lái)檢測(cè)服務(wù)器的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    亚洲国产精品高清久久久| 91久久偷偷做嫩草影院| 久久综合一区| 美女视频黄免费的亚洲男人天堂| 国产精品久久久久久久9999| 亚洲国产精品久久久久蝴蝶传媒| 日韩国产欧美亚洲| 高清无码一区二区在线观看吞精| 欧美美女一区二区在线观看| 日本三级中文字幕| 男女啪啪网站| 91豆花视频在线播放| 青草青青在线视频| 中文字幕精品影院| 外卖gayxxxxgay1| 中文字幕中文字幕在线中高清免费版| 那种视频在线观看| 精品一区二区不卡| 成人免费影院| 在线播放色视频| 免费看成人片| 亚洲成人黄色在线观看| 欧美在线观看视频在线| 天堂成人娱乐在线视频免费播放网站| 老司机在线看片网av| 欧美一级成年大片在线观看| 97国产真实伦对白精彩视频8| 中文字幕av第一页| 日韩欧美激情视频| 久久99久国产精品黄毛片色诱| xxxx性欧美黑人| 国产天堂视频| 久草精品在线观看| 亚洲欧美日韩国产综合在线| 亚洲乱码国产乱码精品精大量| 91久久久久久久久久久| 亚洲一区二区偷拍精品| 99re8精品视频在线观看| 欧美激情中文字幕一区二区| jizzjizz大全| 成人免费观看毛片| 免费观看又污又黄在线观看国产| 中文字幕一区二区三中文字幕| 精品无人区乱码1区2区3区免费| 亚洲欧美另类日本| 69久久99精品久久久久婷婷| 久久综合伊人77777麻豆| 欧美电影一区二区三区| 成年人在线免费看片| 精品xxxxxbbbb欧美中文| 亚洲第一香蕉视频| 成人亚洲综合色就1024| 欧美日韩在线精品一区二区三区激情综| 98精品国产高清在线xxxx天堂| 激情在线视频| 亚洲第一在线综合网站| 精品国产1区2区| 97久久香蕉国产线看观看| 亚洲免费一级视频| 国产a区久久久| 92福利视频午夜1000合集在线观看| 一本色道婷婷久久欧美| 国产系列在线观看| 日韩Av无码精品| 久久只有精品| 欧美深夜视频| 激情五月综合色婷婷一区二区| 国产成人影院| 国产女主播喷水视频在线观看| 日韩在线小视频| 91高清视频| 久久精品国产清高在天天线| 国产精品主播直播| av色资源站| 一区二区冒白浆视频| 免费又黄又爽又猛大片午夜| 国产精品都在这里| 91.com视频| 在线看日韩欧美| 国产大片一区二区| 日韩av大片免费看| 国产性生活网站| **欧美大码日韩| 中文字幕中文字幕中文字幕亚洲无线| 日韩亚洲不卡在线| 高清久久精品| 国产精品网站在线观看| 欧美日韩成人激情| 欧美国产视频一区二区| 成人一二三四区| 欧洲s码亚洲m码精品一区| h网在线观看| 九色91蝌蚪在线| 色先锋av影音| 日韩不卡视频在线观看| 刘玥91精选国产在线观看| 91成人免费网站| 欧美日韩国产在线| 亚洲国产精品久久一线不卡| 视频一区在线| 欧美激情久久久久久久久久久| 国产精品jizz在线观看麻豆| 精彩视频一区二区| 久久久久国产精品无码免费看| 中国一级片在线观看| 欧美交换配乱吟粗大25p| 91视频观看免费| 拔插拔插华人永久免费| 日韩亚洲欧美成人一区| 久久国产综合精品| 国产精品18久久久久久久久久| 国产精品久久久久久久久久久久冷| 高清国产在线观看| 91高清在线免费观看| 国产精品青青在线观看爽香蕉| 妞干网在线视频观看| 久久九九热视频| 97在线观看免费观看高清| 久久久久久久影视| 欧美性大战xxxxx久久久| 岛国毛片在线观看| 欧美成免费一区二区视频| 黑人巨大精品欧美一区免费视频| 91网址在线观看| 亚洲国产裸拍裸体视频在线观看乱了中文| 久久精品国产sm调教网站演员| 蜜桃av一区二区三区| 欧美裸体一区二区三区| www.xxxx国产| 综合色婷婷一区二区亚洲欧美国产| 久久久精品一区二区毛片免费看| 91久久精品国产91久久| 日韩欧美亚洲一区二区三区| 国产区精品视频在线观看豆花| 中文字幕视频精品一区二区三区| 欧美熟妇乱码在线一区| 亚洲精品久久久久久久久久久久| 久久夜色精品国产欧美乱| 亚洲欧洲韩国日本视频| 国产精品无圣光一区二区| 在线播放日韩精品| 欧美一级专区| 污污视频在线免费观看| 亚洲精品一区二区三区区别| 亚洲成人av综合| 日韩妆和欧美的一区二区| 久草在线资源福利| 久久久久久久久久网站| 97久久天天综合色天天综合色hd| 日韩三区在线观看| 天天天天天天天天操| xvideos.蜜桃一区二区| 成年人观看网站| 99在线精品一区二区三区| 91精品国产一区二区三区香蕉| 麻豆精品网站| 91中文字幕永久在线| 最好看的2019年中文视频| 国产白丝网站精品污在线入口| 夜夜揉揉日日人人青青一国产精品| 中文在线免费视频| 国产精品女人网站| 免费一级欧美片在线播放| 亚洲私人影院在线观看| 在线观看国产网站| www高清在线视频日韩欧美| 免费成人av在线| 91热视频在线观看| 91午夜伦伦电影理论片| 亚洲一线二线三线久久久| 丰满少妇被猛烈进入一区二区| 狠狠久久婷婷| 日韩精品免费一区二区夜夜嗨| 亚洲最大网站| 国产普通话bbwbbwbbw| av小说在线播放| 成人在线高清视频| 国产日韩欧美中文| 精品一区二区成人精品| 国产男女猛烈无遮挡91| 图片区偷拍区小说区| 五月天中文字幕一区二区| 一区二区美女视频| 精品日韩一区| 天天操 夜夜操| 免费yellow网站| 激情校园亚洲图片| 午夜精彩国产免费不卡不顿大片| 亚洲精品乱码久久久久久自慰| 国产一区二区三区av电影| 久久久久无码国产精品一区李宗瑞| 精品影片一区二区入口| 一卡二卡在线观看| 亚洲国产一区二区三区青草影视| 伊人久久国产| 免费a级观看| 亚洲天堂网视频| 亚洲宅男天堂在线观看无病毒| 国产精品毛片久久久久久久av| 黄在线观看免费网站ktv| 国产伦精品一区二区三区高清| 在线免费av导航| 99久久免费国产精品| 亚洲一区在线播放| 亚洲成色www8888| 欧美一级淫片播放口| 999国产精品999久久久久久| 国产一级做a爰片在线看免费| 激情五月婷婷网| 国产一二三区在线观看| 欧美国产日韩另类| 免费在线观看一区| 日韩精品一卡二卡三卡四卡无卡| 免费播放片a高清在线观看| 精品免费日韩av| 91免费观看视频在线| 欧美午夜一区二区三区免费大片| 8848hh四虎| 中文字幕色站| 影音欧美亚洲| 亚洲成a人片在线观看中文| xx免费视频| 偷窥自拍亚洲色图精选| 国产99视频精品免费视频36| 中文字幕中文字幕在线中文字幕三区| 日日橹狠狠爱欧美超碰| 我要看一级黄色录像| av成人激情| 在线免费av导航| 亚洲AV成人无码网站天堂久久| 国产精品最新在线观看| 亚洲欧洲99久久| 免费黄色成年网站| 日产精品一区二区| 在线观看亚洲精品视频| 国产一区福利在线| 久久精品国产一区二区三区| 国产日韩一区| 蜜臀久久久久久久| 国产精品久久久久久久av大片| 夜夜爽www精品| 欧美吞精做爰啪啪高潮| 亚洲尤物在线| 国产精品一区二区久久| 亚洲三级电影| 激情五月综合网| 中文字幕亚洲欧美日韩| 免费看国产曰批40分钟| 韩国三级hd两男一女| 一级在线观看视频| 午夜老司机在线观看| 国产成人无码精品久久久性色| 午夜欧美精品久久久久久久| 国产精品中文| 婷婷激情综合五月天| jizz中国女人| 手机在线一区二区三区| 精国产品一区二区三区a片| 日韩有码第一页| 超碰高清在线| 国产亚洲制服色| av电影在线网| 在线亚洲美日韩| 国产激情视频网址| 欧美爱爱视频网站| jizzjizz日本护士视频| 国产色综合天天综合网| 噜噜噜天天躁狠狠躁夜夜精品| 日韩av不卡一区二区| 亚洲二区三区四区| 免费av在线一区二区| 日韩午夜在线播放| 在线观看欧美亚洲| 国产精品久久久久9999吃药| 免费成人在线观看视频| 精品视频在线观看免费观看| 丁香花在线电影| 天堂在线精品视频| av在线播放一区二区三区| 手机看片福利视频| 亚洲人精品午夜在线观看| 亚洲一二三四在线观看| 亚洲午夜久久久久久久国产| 国内外激情在线| 日韩精品一级中文字幕精品视频免费观看| 国产精品精品一区二区三区午夜版| 91抖音在线观看| 日韩精品在线看片z| 国产成人亚洲综合a∨猫咪| 欧美日韩精品免费观看视欧美高清免费大片| 日韩有码电影| 日产精品久久久| www国产精品| 国产精品毛片一区二区在线看舒淇| 欧美人与牛zoz0性行为| 国产精品久久久久久久久妇女| 国产精品日本一区二区三区在线| 中文字幕中文字幕在线中文字幕三区| 精品一区二区三区久久久| 日韩成人18| 美女久久精品| 欧美丝袜在线观看| 欧美成人一区在线| 国产精品视频二| 无码人妻精品一区二区50| 欧美激情视频一区二区| 国产乱码午夜在线视频| 色婷婷综合成人| 国产手机视频一区二区| 青青草精品视频| 污污软件在线观看| 黄色免费在线网站| 欧美另类在线观看| 久久久久久久久久码影片| 黑人极品ⅴideos精品欧美棵| аⅴ资源新版在线天堂| 天堂资源在线亚洲视频| 乱人伦xxxx国语对白| 中文字幕久久网| 久久99视频免费| 亚洲欧洲精品一区二区三区波多野1战4| 成人国产精品一区二区网站| 激情综合网五月| 色香蕉在线观看| 成人一级片在线观看| 精品国产乱码久久久久久丨区2区| 高潮白浆女日韩av免费看| 伊人久久大香伊蕉在人线观看热v|