久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

SoapUI,、Jmeter,、Postman三種接口測(cè)試工具的比較分析

 昵稱32303054 2018-03-26


前段時(shí)間忙于接口測(cè)試,也看了幾款接口測(cè)試工具,,簡(jiǎn)單從幾個(gè)角度做了個(gè)比較,,拿出來(lái)與諸位分享一下吧。各位如果要轉(zhuǎn)載,,請(qǐng)一定注明來(lái)源,,最好在評(píng)論中告知博主一聲,感謝,。本報(bào)告從多個(gè)方面對(duì)接口測(cè)試的三款常用工具進(jìn)行比較分析,,以便于在特定的情況下選擇最合適的工具,或者使用自己編寫(xiě)的工具,。(不同工具定位不同,,我們只是主要從接口功能測(cè)試的角度進(jìn)行分析)。博主對(duì)這幾款工具也僅僅是淺嘗輒止,,并未做太過(guò)深入的應(yīng)用,,報(bào)告中如果有哪些不合適的地方,歡迎指正,。

 

1.  用例組織方式

首先是用例組織方式的不同,,不同的目錄結(jié)構(gòu)與組織方式代表不同工具的測(cè)試思想,學(xué)習(xí)一個(gè)測(cè)試工具應(yīng)該首先了解其組織方式,。

SoapUI的組織方式如下圖,,最上層是WorkSpace,每個(gè)窗口只可以打開(kāi)一個(gè)WorkSpace(這是一個(gè)xml文件),,每個(gè)Project也是一個(gè)單獨(dú)的xml文件(為了協(xié)同工作,,也可以通過(guò)設(shè)置將其轉(zhuǎn)化為一堆文件集合),所以每個(gè)WorkSpace中可以打開(kāi)多個(gè)Project,,一個(gè)Project也可以在不同的WorkSpace中,。

Project對(duì)應(yīng)我們的測(cè)試項(xiàng)目,其中可添加WSDL,、WADL資源,、TestSuite以及MockService。

TestSuite對(duì)應(yīng)我們的測(cè)試模塊,,比如商戶中心,,其中可以添加TestCase,TestCase對(duì)應(yīng)我們對(duì)某個(gè)模塊的不同接口,,比如訂單管理接口,。而一個(gè)接口可以能需要多個(gè)Step完成,變量,、數(shù)據(jù)源,、請(qǐng)求等都是一個(gè)Step,。


Jmeter的組織方式相對(duì)比較扁平,它首先沒(méi)有WorkSpace的概念,,直接是TestPlan,,等價(jià)于SoapUI中的Project,TestPlan下創(chuàng)建的Threads Group就相當(dāng)于TestCase,,并沒(méi)有TestSuite的層級(jí),。

TheadsGroup中的Sampler、管理器等均相當(dāng)于SoapUI中的一個(gè)Step,,如下圖:


Postman功能上更簡(jiǎn)單,,組織方式也更輕量級(jí),它主要針對(duì)的就是單個(gè)的HTTP請(qǐng)求,。Collection就相當(dāng)于是Project,,而Collection中可以創(chuàng)建不定層級(jí)的Folders,可以自己組織TestSuite,。每個(gè)Request可以當(dāng)做是一個(gè)TestCase或者Step:


 

2.  支持的接口類(lèi)型與測(cè)試類(lèi)型

從功能上Jmeter最為強(qiáng)大,,可以測(cè)試各種類(lèi)型的接口,不支持的也可以通過(guò)網(wǎng)上或自己編寫(xiě)的插件進(jìn)行擴(kuò)展,。SoapUI專(zhuān)門(mén)針對(duì)HTTP類(lèi)型的兩種接口,其初衷更是專(zhuān)門(mén)測(cè)試Soap類(lèi)型接口,,對(duì)于其他協(xié)議的接口不支持,。Postman更是輕量級(jí),定位也不同,,可用來(lái)測(cè)試Rest接口,。

 

工具

接口類(lèi)型

測(cè)試類(lèi)型

SoapUI

Soap、Rest

功能,、壓力,、安全

Jmeter

Rest、Soap等

可擴(kuò)展WebSocket,、socket

功能,、壓力

Postman

Rest

功能

 

3.  配置不同接口類(lèi)型

SoapUI可以創(chuàng)建Soap Project或者Rest Project(但Project中添加什么類(lèi)型的Step則不受影響),可添加wsdl,、wadl資源,,并能在TestCase里添加Rest或Soap的Step。

Jmeter可以在線程組里添加HTTP,、TCP或WebSocket的Sampler,。

Postman僅支持Rest接口。

 

4.  自定義變量以及變量的作用域

除以下表格中所列的變量之外,,每個(gè)工具都有系統(tǒng)變量,,未列在內(nèi),。

 

工具

變量類(lèi)型

作用域

SoapUI

Project、TestSuite,、TestCase的Properties以及Custom Properties

各自以內(nèi)的范圍內(nèi)

TestCase里的Properties

在整個(gè)TestCase內(nèi)

TestCase里的Data Source,、DataGen等

在整個(gè)TestCase內(nèi)

Groovy腳本定義

看定義方式

Jmeter

TestPlan中用戶定義的變量

所有Threads Group

配置元件 - 用戶定義的變量

根據(jù)元件位置而定

CSV data set、random variable等

根據(jù)元件位置而定

前置,、后置處理器

當(dāng)前Threads Group

Postman

Environment Variable

當(dāng)前環(huán)境的Collection

Global Variable

所有Collections

CSV/JSON datafile

Runner當(dāng)前的Collection

 

5.  數(shù)據(jù)源,、生成器,進(jìn)行參數(shù)化

 

工具

數(shù)據(jù)源

生成器

循環(huán)

SoapUI

DataSource,,數(shù)據(jù)可來(lái)源于文件,、目錄、數(shù)據(jù)庫(kù),、Excel,、Grid等

DataGen

DataSource Loop

Jmeter

CSV Data Set Config讀取csv文件

Random Variable

計(jì)數(shù)器

ForEach控制器

循環(huán)控制器

While控制器

Postman

Runner中運(yùn)行時(shí),可加載CSV/JSON文件

無(wú)(只能通過(guò)腳本)

Runner中的Iteration

 

6.  流程控制

SoapUI:由Conditioinal Goto控制流程,,以及Groovy腳本

Jmeter:由Switch控制器,、If控制器、隨機(jī)控制器等一系列控制器實(shí)現(xiàn)流程控制,,以及Beanshell腳本

Postman:通過(guò)JavaScript腳本控制

 

7.  結(jié)果解析,、展示

 

工具

結(jié)果

日志

報(bào)告

SoapUI

Project-OverView、TestSuites

TestSuite-TestCases

TestCase-TestSteps

SoapUI全局多種log

TestSuite log

TestCase log

Request log

Project report

TestSuite report

TestCase report

(PDF/HTML/XML/CSV)

Jmeter

各種監(jiān)聽(tīng)器

統(tǒng)一的Jmeter log

監(jiān)聽(tīng)器可導(dǎo)出到文件

并可導(dǎo)出JTL,、CSV文件,、通過(guò)插件可導(dǎo)出HTML(Jmeter3自帶)

Postman

Send可查看Request的Response

Runner可查看運(yùn)行的Result

Postman console

Chrome DevTools

Request的Response以及Runner的Result均可導(dǎo)出json

 

8.  斷言

SoapUI:每個(gè)Request可添加Assertion

Jmeter:TestPlan、Threads Group,、Sampler均可添加斷言

Postman:請(qǐng)求的Tests中可添加斷言

 

9.  腳本擴(kuò)展能力

SoapUI:Groovy腳本

Jmeter:Bean shell(Java)

Postman:JavaScript

 

10. 團(tuán)隊(duì)協(xié)作

SoapUI:本身一個(gè)project是一個(gè)xml文件,,但是可以通過(guò)配置變成一系列文件夾,每個(gè)Case,、每個(gè)Suite均是獨(dú)立的文件,,這樣可通過(guò)svn/git進(jìn)行團(tuán)隊(duì)協(xié)作。支持性較好,。

Jmeter:一個(gè)TestPlan也是一個(gè)jmx(xml)文件,,無(wú)法分割,但Jmeter有一個(gè)合并的功能,,允許將多個(gè)文件合并在一起,。只能每個(gè)團(tuán)隊(duì)成員自己建立一個(gè)TestPlan,分功能塊進(jìn)行測(cè)試,。最后整理合并,。

Postman:有團(tuán)隊(duì)協(xié)作的功能,需要付費(fèi),。


歡迎指正,,更多文章,,請(qǐng)關(guān)注本人博客——灰藍(lán)的博客


 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買(mǎi)等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多