摘要:同時(shí)我們也可以使用控件來(lái)實(shí)現(xiàn)小型的接口自動(dòng)化來(lái)提高接口測(cè)試效率。接口測(cè)試的流程首先我們要了解需求,熟悉業(yè)務(wù)場(chǎng)景然后根據(jù)需求文檔,接口文檔以及業(yè)務(wù)場(chǎng)景來(lái)編寫(xiě)測(cè)試用例。
接口測(cè)試用例編寫(xiě)除了使用功能測(cè)試中最基本的等價(jià)類(lèi),邊界值,因果圖,錯(cuò)誤推測(cè),場(chǎng)景設(shè)計(jì)等方法外,還要考慮一些其他方面,首先我們要先進(jìn)行冒煙測(cè)試,說(shuō)白了就是傳遞正確的參數(shù)查看是否返回正確的結(jié)果然后還要考慮參數(shù)組合:因?yàn)閰?shù)有必填和非必填,參數(shù)的格式、長(zhǎng)度,以及數(shù)據(jù)傳輸?shù)臉I(yè)務(wù)流程中的一些限制,我們要考慮不同的參數(shù)組合的情況,以保證能夠覆蓋到所有的情況以及繞過(guò)驗(yàn)證、權(quán)限驗(yàn)證、參數(shù)是否加密
最重要的是要考慮業(yè)務(wù)邏輯校驗(yàn),請(qǐng)求的類(lèi)型、格式,地址、參數(shù),以及數(shù)據(jù)庫(kù)的落地情況(比 如測(cè)試新增更新的接口時(shí),要看數(shù)據(jù)的返回是否完整,與數(shù)據(jù)庫(kù)進(jìn)行對(duì)比)。
做過(guò)接口測(cè)試,一般我們都是使用jmeter工具來(lái)進(jìn)行接口測(cè)試,首先在測(cè)試計(jì)劃中添加一個(gè)線(xiàn)程組,然后在線(xiàn)程組中添加一個(gè)HTTP請(qǐng)求,然后通過(guò)抓包獲取接口網(wǎng)址,然后將IP,端口號(hào),路徑,請(qǐng)求方式,以及相應(yīng)的參數(shù)手動(dòng)添加到HTTP請(qǐng)求中,然后在線(xiàn)程組里再建一個(gè)察看結(jié)果樹(shù)來(lái)查看執(zhí)行結(jié)果。也可以添加一些斷言來(lái)判斷返回結(jié)果。然后我們執(zhí)行HTTP請(qǐng)求,在察看結(jié)果樹(shù)里驗(yàn)證返回內(nèi)容、格式等是否符合接口文檔。
同時(shí)我們也可以使用CSV控件來(lái)實(shí)現(xiàn)小型的接口自動(dòng) 化來(lái)提高接口測(cè)試效率。在CSV中添加本地Text的文件路徑,TEXT文件中主要包含測(cè)試用例的內(nèi)容及每條測(cè)試用例的預(yù)期結(jié)果,每行包含一條用例,我們需要給用例中的每項(xiàng)內(nèi)容起一個(gè)變量名,配置完畢就可以使用 變 量 名 來(lái) 調(diào) 用 了 , 然 后 添 加 響 應(yīng) 斷 言 , 也 是 使 用 {變量名}來(lái)調(diào)用了,然后添加響應(yīng)斷言,也是使用 變量名來(lái)調(diào)用了,然后添加響應(yīng)斷言,也是使用{}來(lái)調(diào)用CSV中的預(yù)期結(jié)果,最后將線(xiàn)程組中的線(xiàn)程數(shù)改一下,這樣就可以執(zhí)行多條用例了,大概就這樣。
首先我們?cè)诰€(xiàn)程組中添加兩個(gè)HTTP請(qǐng)求,然后在第一個(gè)接口下添加一個(gè)正則表達(dá)式提取器,然后把我們需要提取的參數(shù)使用(.+?)()代表封裝了待返回的匹配字符.代表匹配任何字符,+代表匹配一次或多次?代表不要臺(tái)貪婪,匹配到第一個(gè)符合的字符后停止
先在網(wǎng)頁(yè)上登錄,然后通過(guò)開(kāi)發(fā)人員工具獲取登錄的cookie參數(shù),然后在使用的時(shí)候在HTTP請(qǐng)求前添加HTTP cookie管理器,直接將cookie的參數(shù)手動(dòng)添加到 HTTP cookie管理器中就可以了
批量進(jìn)行接口測(cè)試我們是通過(guò)jmeter中的CSV控件來(lái)實(shí)現(xiàn)的,首先我們?cè)诒镜亟ㄒ粋€(gè)text文件,然后將用例及預(yù)期結(jié)果添加到文件中,然后在線(xiàn)程組中添加CSV控件,在控件中配置用例每項(xiàng)對(duì)應(yīng)的變量名,然后再添加HTTP請(qǐng)求以及響應(yīng)斷言,通過(guò)${}來(lái)調(diào)用CSV中的變量,最后再把線(xiàn)程組中的線(xiàn)程數(shù)調(diào)為我們執(zhí)行用例的數(shù)量就可以了。
一種是在錄制腳本的時(shí)候添加HTTP cookie管理器獲取cookie,還有一種就是手動(dòng)添加cookie的參數(shù)到HTTP cookie管理器中
首先,我們測(cè)試計(jì)劃中添加一個(gè)線(xiàn)程組,線(xiàn)程組中添加cookie管理器(如果需要登錄的話(huà)),然后將瀏覽器設(shè)置好代理,在jmeter控制臺(tái)添加一個(gè)HTTP代理服務(wù)器,端口號(hào)設(shè)置為與瀏覽器代理端口號(hào)一致,把目標(biāo)控制器選擇測(cè)試計(jì)劃線(xiàn)程組,啟動(dòng)HTTP代理服務(wù)器,我們?cè)跒g覽器的操作就可以錄制了。
get和post本質(zhì)上都是TCP連接并無(wú)區(qū)別,由于HTTP協(xié)議規(guī)定以及瀏覽器的限制導(dǎo)致在應(yīng)用過(guò)程中有一些不同。
get請(qǐng)求類(lèi)型主要用于直接獲取數(shù)據(jù)比如查詢(xún),搜索,讀取。post請(qǐng)求類(lèi)型需要邏輯處理比如支付、登錄、注冊(cè)。
get請(qǐng)求的參數(shù)是附在URL之后,post請(qǐng)求的參數(shù)是放在請(qǐng)求體中
get請(qǐng)求有長(zhǎng)度限制,一般不超過(guò)4KB,post請(qǐng)求理論上沒(méi)有限制,限制的是服務(wù)器處理數(shù)據(jù)的能力
get請(qǐng)求的數(shù)據(jù)在URL后可以通過(guò)瀏覽器的地址欄看到,不安全,post請(qǐng)求相對(duì)來(lái)說(shuō)比較安全,但是如果post請(qǐng)求不對(duì)隱私數(shù)據(jù)進(jìn)行加密也是不安全的
get請(qǐng)求的參數(shù)會(huì)保存在瀏覽器歷史記錄上,而post請(qǐng)求的參數(shù)不會(huì)保留。
對(duì)于get請(qǐng)求而言,瀏覽器會(huì)直接把HTTP、header和請(qǐng)求參數(shù)一起發(fā)送給服務(wù)器,而post是瀏覽器先發(fā)送header,服務(wù)器響應(yīng)100后,瀏覽器再發(fā)送請(qǐng)求數(shù)據(jù),然后服務(wù)器再返回結(jié)果。
對(duì)于一些經(jīng)常變動(dòng)又頻繁調(diào)用的數(shù)據(jù),我們一般存放在用戶(hù)自定義變量中,使用的時(shí)候直接使用${變量名}進(jìn)行調(diào)用,而對(duì)于一些默認(rèn)的參數(shù)如網(wǎng)址,端口路徑等,我們存放在HTTP請(qǐng)求默認(rèn)值中,如果需要使用,在HTTP請(qǐng)求中那項(xiàng)置空就可以了
首先我們需要先將上傳圖片的接口通過(guò)jmeter抓到,然后在HTTP請(qǐng)求中輸入相關(guān)的參數(shù),在下方的files upload中添加圖片的本地完整路徑及圖片的格式就可以上傳圖片了。
測(cè)試HTTPS的接口我們將HTTP請(qǐng)求中的端口改為443,協(xié)議為HTTPS就可以了
Jmeter中的HTTP代理服務(wù)器中有jmeter的過(guò)濾模塊,我們把需要過(guò)濾的參數(shù)放在過(guò)濾模式里面就可以了。
Get接口比如查詢(xún),搜索,讀取。post請(qǐng)求比如訂單,交易,登錄等
我用過(guò)jmeter的響應(yīng)斷言
循環(huán)控制器,計(jì)數(shù)器
HTTP是超文本傳輸協(xié)議,是瀏覽器在數(shù)據(jù)傳輸時(shí)必須遵循的協(xié)議。它可以將超文本標(biāo)記語(yǔ)言文檔從客戶(hù)端傳輸?shù)椒?wù)器。
首先我們需要在測(cè)試計(jì)劃中添加MySQL的配置jar包,然后在測(cè)試計(jì)劃中添加線(xiàn)程組,線(xiàn)程組中添加JDBC connection configration去進(jìn)行數(shù)據(jù)庫(kù)的配置,有數(shù)據(jù)庫(kù)連接池,mysql驅(qū)動(dòng),以及MySQL的賬號(hào)密碼。然后再添加一個(gè)JDBC request 輸入查詢(xún)語(yǔ)句進(jìn)行查詢(xún)添加一個(gè)察看結(jié)果樹(shù)查看結(jié)果就可以了。
首先我們先將MySQL的連接配置好,然后在JDBCrequest中輸入查詢(xún)語(yǔ)句查詢(xún)出相應(yīng)的字段名及字段值,然后給查詢(xún)的內(nèi)容重命名,調(diào)用的時(shí)候使用${變量名_第幾行的數(shù)據(jù)}就可以了。
使用${變量名}進(jìn)行參數(shù)化
接口測(cè)試是測(cè)試系統(tǒng)組件之間數(shù)據(jù)傳輸?shù)囊环N測(cè)試,主要檢測(cè)系統(tǒng)與系統(tǒng)之間或系統(tǒng)與 內(nèi)部組件之間的數(shù)據(jù)正確性。
接口測(cè)試的原理就是模擬客戶(hù)端向服務(wù)器發(fā)出請(qǐng)求,服務(wù)器接收請(qǐng)求之后,對(duì)請(qǐng)求做出 處理并把響應(yīng)結(jié)果返回給客戶(hù)端。
(1)請(qǐng)求地址
(2)請(qǐng)求方式
(3)請(qǐng)求參數(shù)
(4)參數(shù)詳解(每個(gè)參數(shù)代表什么意思,如果沒(méi)有詳解就去問(wèn)開(kāi)發(fā))
(5)響應(yīng)結(jié)果
(6)結(jié)果詳解(響應(yīng)結(jié)果中每個(gè)參數(shù)所代表的意思)
最常見(jiàn)的是http接口和https接口,除此之外還有webservice接口、dubbo接口等
Jmeter(開(kāi)源的,接口/性能)、postman、soap UI、load runner(接口/性能)
(1)物流訂單信息,一般物流信息都是通過(guò)各大物流公司的接口獲取到的
(2)通過(guò)攜程等APP訂不同航空公司的機(jī)票,機(jī)票信息一般都是通過(guò)各大航空公司的接獲取到的。
(3)12306訂票支付的時(shí)候,使用微信、支付寶、銀行卡支付都是調(diào)用的接口
(4)軟件實(shí)名認(rèn)證時(shí)驗(yàn)證姓名身份證號(hào)是否匹配就是調(diào)用公安系統(tǒng)的接口
(5)綁卡時(shí)需要輸入姓名身份證號(hào)銀行卡號(hào)也是調(diào)用的銀行系統(tǒng)的接口。
一般情況下在單元測(cè)試之后,進(jìn)行集成測(cè)試的時(shí)候我們進(jìn)行接口測(cè)試,或者在功能測(cè)試之前我們會(huì)進(jìn)行接口測(cè)試。
一般問(wèn)有沒(méi)有做過(guò)集成測(cè)試,可以理解為有沒(méi)有做過(guò)接口測(cè)試
(1)現(xiàn)在很多系統(tǒng)都是前后端分離的,從安全層面上來(lái)說(shuō),只依賴(lài)前端進(jìn)行限制已經(jīng)完全 不能滿(mǎn)足安全需求,因?yàn)槔@前端太容易了,這種情況下我們需要去測(cè)試接口。
(2)因?yàn)榻涌谥袀鬏數(shù)氖菙?shù)據(jù),所以我們要測(cè)試數(shù)據(jù)的正確性
(3)接口測(cè)試能夠覆蓋功能測(cè)試覆蓋不到的點(diǎn),而且接口測(cè)試效率更快,覆蓋相對(duì)更全面, 結(jié)合功能測(cè)試能夠更好的提高測(cè)試覆蓋率。
(1)首先我們要了解需求,熟悉業(yè)務(wù)場(chǎng)景
(2)然后根據(jù)需求文檔,接口文檔以及業(yè)務(wù)場(chǎng)景來(lái)編寫(xiě)測(cè)試用例。
(3)再進(jìn)行測(cè)試用例的評(píng)審,征求開(kāi)發(fā)、測(cè)試、產(chǎn)品的意見(jiàn)對(duì)用例進(jìn)行完善
(4)再然后準(zhǔn)備測(cè)試數(shù)據(jù),測(cè)試工具以及測(cè)試用例
(5)最后執(zhí)行接口測(cè)試,提交bug并驗(yàn)證bug測(cè)試完畢后發(fā)送測(cè)試報(bào)告并確定是否能上線(xiàn)
我們會(huì)通過(guò)抓包,先把這個(gè)接口的信息抓到然后再去測(cè)試這個(gè)接口
博客來(lái)源:雨夜的博客
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/122095.html
摘要:接口測(cè)試主要用于檢測(cè)外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個(gè)子系統(tǒng)之間的交互點(diǎn)。隨著案例和執(zhí)行結(jié)果的不斷積累,接口測(cè)試覆蓋會(huì)更加充分,統(tǒng)計(jì)結(jié)果會(huì)更加精確。 原文出自【聽(tīng)云技術(shù)博客】:http://blog.tingyun.com/web/a... 今年遇到了幾個(gè)問(wèn)題,與接口的功能和性能相關(guān),恰巧最近公司也在組織以冒煙測(cè)試為主題的活動(dòng),于是乎突發(fā)奇想,尋思著能否將接口測(cè)試與冒煙測(cè)試結(jié)合起來(lái),發(fā)掘一...
摘要:接口測(cè)試形式單個(gè)接口測(cè)試包含性能測(cè)試和通過(guò)接口調(diào)用進(jìn)行場(chǎng)景測(cè)試。充分來(lái)說(shuō)就是接口測(cè)試相對(duì)容易實(shí)現(xiàn)自動(dòng)化持續(xù)集成。 本文你將了解到 1、接口測(cè)試基本概念,包含什么是接口,什么是接口測(cè)試,為什么要做接口測(cè)試2、接口測(cè)試用例設(shè)計(jì)3、怎樣不用寫(xiě)代碼,也能快速的根據(jù)開(kāi)發(fā)的API文檔完成接口自動(dòng)化測(cè)試腳本 注:如果你對(duì)接口基本概念和接口測(cè)試用例已熟悉,可以直接跳過(guò),其實(shí)看一遍也無(wú)防,就當(dāng)作 溫故知...
摘要:接口測(cè)試結(jié)果歸類(lèi)分析方法基于接口測(cè)試結(jié)果模型化和組織級(jí)的錯(cuò)誤碼庫(kù)非缺陷知識(shí)庫(kù),本專(zhuān)利的方法及裝置將接口測(cè)試的結(jié)果分類(lèi)分析,輸出概要表和錯(cuò)誤分類(lèi)表。 詳細(xì)介紹技術(shù)背...
摘要:所以要想做好中級(jí)軟件測(cè)試工程師,第一步就是能夠完成接口測(cè)試。通常情況下,接口測(cè)試最多還是使用工具來(lái)完成原因無(wú)他,高效。 想來(lái)我26歲才正式投身進(jìn)入軟件測(cè)試行業(yè);通過(guò)...
閱讀 2306·2023-04-25 14:17
閱讀 1514·2021-11-23 10:02
閱讀 2169·2021-11-23 09:51
閱讀 872·2021-10-14 09:49
閱讀 3384·2021-10-11 10:57
閱讀 2921·2021-09-24 09:47
閱讀 3045·2021-08-24 10:00
閱讀 2297·2019-08-29 18:46