日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

Python自动化一--接口测试基础知识,jmeter操作介绍

發(fā)布時間:2025/7/14 python 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python自动化一--接口测试基础知识,jmeter操作介绍 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一,接口概念

?1)系統(tǒng)對外的接口:比如你要從別的網(wǎng)站或服務(wù)器上獲取資源或信息,別人肯定不會把數(shù)據(jù)庫共享給你,他只能給你提供一個他們寫好的方法來獲取數(shù)據(jù),你引用他提供的接口就能使用他寫好的方法,從而達到數(shù)據(jù)共享的目的,比如說咱們用的app、網(wǎng)址這些它在進行數(shù)據(jù)處理的時候都是通過接口來進行調(diào)用的。

?2)程序內(nèi)部的接口:方法與方法之間,模塊與模塊之間的交互,程序內(nèi)部拋出的接口,比如bbs系統(tǒng),有登錄模塊、發(fā)帖模塊等等,那你要發(fā)帖就必須先登錄,要發(fā)帖就得登錄,那么這兩個模塊就得有交互,它就會拋出一個接口,供內(nèi)部系統(tǒng)進行調(diào)用。

二,接口分類:常用webservice和http api

1)webservice接口:是走soap協(xié)議通過http傳輸,請求報文和返回報文都是xml格式的,我們在測試的時候都用通過工具才能進行調(diào)用,測試。

2)http api接口:是走http協(xié)議,通過路徑來區(qū)分調(diào)用的方法,請求報文都是key-value形式的,返回報文一般都是json串,有g(shù)et和post等方法,這也是最常用的兩種請求方式。

三,前后端概念

前端是什么呢,對于web端來說,咱們使用的網(wǎng)頁,打開的網(wǎng)站,這都是前端,這些都是html、css寫的;對于app端來說呢,它就是咱們用的app,android或者object-C(開發(fā)ios上的app)開發(fā)的,它的作用就是顯示頁面,讓我們看到漂亮的頁面,以及做一些簡單的校驗,比如說非空校驗,咱們在頁面上操作的時候,這些業(yè)務(wù)邏輯、功能,比如說你購物,發(fā)微博這些功能是由后端來實現(xiàn)的,后端去控制你購物的時候扣你的余額,發(fā)微博發(fā)到哪個賬號下面,那前端和后端是怎么交互的呢,就是通過接口。 說的通俗點,前端負責(zé)貌美如花,后端負責(zé)養(yǎng)家糊口。

四,接口測試

接口測試是測試系統(tǒng)組件間接口的一種測試。接口測試主要用于檢測外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個子系統(tǒng)之間的交互點。測試的重點是要檢查數(shù)據(jù)的交換,傳遞和控制管理過程,以及系統(tǒng)間的相互邏輯依賴關(guān)系等。

其實接口測試就和普通功能測試沒什么區(qū)別,區(qū)別就是功能測試是在頁面上點點點,在頁面上輸入值,提交數(shù)據(jù)看結(jié)果,而接口測試沒有頁面,通過接口規(guī)范文檔上的調(diào)用地址、請求參數(shù),拼接報文,然后發(fā)送請求,檢查返回結(jié)果。

五,接口測試的必要性

1)可以發(fā)現(xiàn)很多在頁面上操作發(fā)現(xiàn)不了的bug

2)檢查系統(tǒng)的異常處理能力

3)檢查系統(tǒng)的安全性、穩(wěn)定性

4)前端隨便變,接口測好了,后端不用變

六,接口測試流程

1)需求評審,熟悉業(yè)務(wù)和需求

2)開發(fā)提供接口文檔

3)編寫接口測試用例

4)用例評審

5)提測后開始測試

6)提交測試報告

七,接口文檔規(guī)范

接口文檔至少包括:接口說明,調(diào)用URL,請求方法(get/post), 請求參數(shù),參數(shù)類型,請求參數(shù)說明

八,如何測http接口

1)url?param=value&param2=value 這種是最簡單的一種,問號前面是請求url,后面是請求的參數(shù)名和參數(shù)值,多個參數(shù)用&來連接 https://api.douban.com/v2/book/search?q=鄒偉偉

2)還有一種就是入?yún)⑹莏son串的,那就不能拼接參數(shù)了,需要借助工具來完成比如postman?

如何測webservice接口

webservice接口怎么測試呢,他不需要你在拼報文了,會給一個webservice的地址,或者wsdl文件,直接在soapui導(dǎo)入,就可以看到這個webservice里面的所有接口,也有報文,直接填入?yún)?shù)調(diào)用,看返回結(jié)果就可以了。 天氣預(yù)報wsdl地址:http://www.webservicex.net/globalweather.asmx?wsdl

九,http接口中GET請求和POST請求的區(qū)別

1)GET使用URL或Cookie傳參。而POST將數(shù)據(jù)放在BODY中。

2)GET的URL會有長度上的限制,則POST的數(shù)據(jù)則可以非常大。

3)POST比GET安全,因為數(shù)據(jù)在地址欄上不可見。

4)一般get請求用來獲取數(shù)據(jù),post請求用來發(fā)送數(shù)據(jù)。

cookie和session

cookie是存儲在瀏覽器客戶端本地的一個鍵值對 ,用于登錄

session是存放在服務(wù)器端的一個鍵值對

十,HTTP狀態(tài)碼

1)200 2開頭的都表示這個請求發(fā)送成功,最常見的就是200,就代表這個請求是ok的,服務(wù)器也返回了。

2)300 3開頭的代表重定向,最常見的是302,把這個請求重定向到別的地方了,

3)400 400代表客戶端發(fā)送的請求有語法錯誤,401代表訪問的頁面沒有授權(quán),403表示沒有權(quán)限訪問這個頁面,404代表沒有這個頁面

4)500 5開頭的代表服務(wù)器有異常,500代表服務(wù)器內(nèi)部異常,504代表服務(wù)器端超時,沒返回結(jié)果

十一,通用接口用例設(shè)計

1)通過性驗證:首先肯定要保證這個接口功能是好使的,也就是正常的通過性測試,按照接口文檔上的參數(shù),正常傳入,是否可以返回正確的結(jié)果。

2)接口安全:

? ? 1.繞過驗證,比如說購買了一個商品,它的價格是300元,那我在提交訂單時候,我把這個商品的價格改成3元,后端有沒有做驗證,更狠點,我把錢改成-3,是不是我的余額還要增加?

? ? 2.繞過身份授權(quán),比如說修改商品信息接口,那必須得是賣家才能修改,那我傳一個普通用戶,能不能修改成功,我傳一個其他的賣家能不能修改成功

? ? 3.參數(shù)是否加密,比如說我登陸的接口,用戶名和密碼是不是加密,如果不加密的話,別人攔截到你的請求,就能獲取到你的信息了,加密規(guī)則是否容易破解。

? ? 4.密碼安全規(guī)則,密碼的復(fù)雜程度校驗

? ? 5.用戶進行提交操作的接口要考慮防刷機制

? ? 6.業(yè)務(wù)邏輯的接口要考慮是否暴露了敏感信息(比如獲取題目接口中返回了題目的答案)

? ? 7.提交輸入信息的操作接口,要考慮xss漏洞風(fēng)險(跨站腳本攻擊)??

3)異常驗證:異常的,也就是我不按照你接口文檔上的要求輸入?yún)?shù),來驗證接口對異常情況的校驗。比如說必填的參數(shù)不填,輸入整數(shù)類型的,傳入字符串類型,長度是10的,傳11,總之就是你說怎么來,我就不怎么來,其實也就這三種,必傳非必傳、參數(shù)類型、入?yún)㈤L度。

4)根據(jù)業(yè)務(wù)邏輯:根據(jù)業(yè)務(wù)邏輯來設(shè)計的話,就是根據(jù)自己系統(tǒng)的業(yè)務(wù)來設(shè)計用例,這個每個公司的業(yè)務(wù)不一樣,就得具體的看自己公司的業(yè)務(wù)了,其實這也和功能測試設(shè)計用例是一樣的。 舉個例子,拿bbs來說,bbs的需求是這樣的:登錄失敗5次,就需要等待15分鐘之后再登錄 ;新注冊的用戶需要過了實習(xí)期才能發(fā)帖 ;刪除帖子扣除積分 。像這樣的你就要把這些測試點列出來,然后再去造數(shù)據(jù)測試對應(yīng)的測試點。

5)接口性能:涉及到大數(shù)據(jù)量的接口時,要考慮接口的響應(yīng)時間,還有接口的qps

? ?比如輸入以下代碼會出現(xiàn)警告框提示

? ?http://www.test.com/message.php?send=<script>alert(‘foolish!’)</script>!

? ?處理方法是對用戶提交的數(shù)據(jù)進行過濾處理

十二,接口測試用例模板

接口測試用例包含字段:

? 1)項目 是哪個項目的??

? 2)模塊 這個接口是屬于哪個功能模塊的

? 3)用例id

? 4)接口名稱

? 5)用例標(biāo)題 用例是干嘛的

? 6)請求方式 GET/POST

? 7)請求url url地址

? 8)請求參數(shù)

? 9)前置條件 有依賴的時候,比如說要測登錄失敗3次的

?10)結(jié)果驗證 預(yù)期結(jié)果

?11)請求報文

?12)返回報文

?13)測試結(jié)果 通過/失敗

?14)測試人員

十三,用Jmeter做接口測試

1.jmeter測http接口腳本流程

1)添加線程組

2)添加http請求

3)在http請求中寫入接口url、路徑、請求方式、參數(shù)

4)添加查看結(jié)果樹

5)調(diào)用接口、查看返回值

2.jmeter-http接口添加header

比如獲取所有學(xué)生信息接口

3.Jmeter-http接口腳本添加cookie

?

比如金幣充值

4.Jmeter-webservice腳本

1)在soapui中新建已經(jīng)soap項目,導(dǎo)入wsdl地址,獲取到請求報文、SOAPAction和請求url(在soapui的raw中能找到)

2)打開jmeter新建一個線程組

3)新建一個SOAP/XML-RPC Request

4)把url、soapaction和請求報文寫到soaprequest中

5)調(diào)用接口、查看返回值

?

5.jmeter-參數(shù)化

1)用戶定義的變量 這種就是為了方便管理參數(shù),只能有一個值,比如說ip地址不經(jīng)常變化的

?

?

2)函數(shù)生成器:函數(shù)生成器可以參照一定的規(guī)則生成數(shù)據(jù),這樣的比如說生成一些隨機數(shù)

? ? 函數(shù)助手的話,可以按照規(guī)則生成一些參數(shù),比如說隨機數(shù)取當(dāng)前時間,最常用的就是這兩種。

? ? 1.隨機數(shù)__Random,可以在你指定的一個范圍內(nèi)取隨機值

? ? 2.取當(dāng)前時間__time,如果在有一些需要傳時間的情況下可以使用,日期格式是: yyyy-MM-dd HH:mm:ss 年-月-日-小時:分鐘:秒 取唯一id,__UUID,這個就是每次會生成一個隨機的uuid,都是唯一的

?

3)參數(shù)化-從文件中讀取

從文件中讀取的話,讀取文件,取文件內(nèi)容里面的參數(shù),給它一個名字 ,使用值 從文件讀取的話,需要在線程組里面添加一個CSV Data Set Config,它就是做前面兩步的操作的

?

6.jmeter斷言

斷言是什么呢,它是用來檢查返回結(jié)果對不對的。 用來驗證結(jié)果是否正確,如果正確的話,就代表這個請求的返回是正確的,如果沒有的話就代表這個請求的結(jié)果和我們預(yù)期的不一致,這樣我們就可以通斷言來檢查返回結(jié)果,測試是否通過。

7.jmeter關(guān)聯(lián)

關(guān)聯(lián)就是做這個事的,它就是獲取到返回的值,然后保存起來,給別的請求使用,或者做一些其他的處理。

通過上面的關(guān)聯(lián)就可以把返回中我們想要的值抓到了,給其他請求使用的時候,直接使用${name}即可,name就是你關(guān)聯(lián)的時候設(shè)置的變量名。

8.jmeter操作mysql

? ?1)導(dǎo)入jdbc的jar包,因為jmeter本身不能直接連接mysql,所以需要導(dǎo)入第三方的jar包,來連接mysql

? ?2)創(chuàng)建數(shù)據(jù)庫連接配置,mysql的url、端口號、賬號、密碼

? ?3)寫sql,執(zhí)行sql

? ?4)查看結(jié)果

?Jmeter導(dǎo)入jdbcjar包

?

Jmeter配置mysql連接

1)添加一個JDBC Connection Configuration

2)配置mysql連接池的名稱,后面發(fā)sql請求的時候指定連接哪里

3)數(shù)據(jù)庫的url:jdbc:mysql://192.168.1.116:3307/bugfree?allowMultiQueries=true

4)數(shù)據(jù)庫驅(qū)動:這里就是指定連接什么類型的數(shù)據(jù)庫,mysql、oracle、SqlServer等等

5)賬號密碼

?

Jmeter數(shù)據(jù)庫驅(qū)動列表

Jmeter執(zhí)行sql

Jmeter查看sql執(zhí)行結(jié)果

?

?2018-05-21

?

轉(zhuǎn)載于:https://www.cnblogs.com/tudouxifan/p/9065934.html

總結(jié)

以上是生活随笔為你收集整理的Python自动化一--接口测试基础知识,jmeter操作介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲天堂2024 | 毛片黄色片 | 国产三级一区二区 | 中文写幕一区二区三区免费观成熟 | 亚洲美女自拍偷拍 | 肌肉猛男裸体gay网站免费 | 美女毛毛片 | 日韩av一区二区三区在线观看 | 在线播放少妇奶水过盛 | 9191在线视频| 中文字幕25页 | 日本动漫艳母 | 国产香蕉网 | 操操干干 | 91精品国产99久久久久久红楼 | 精品香蕉视频 | 欧美色视频在线 | 麻豆视频免费 | 久久久久一区二区三区四区 | 五月色婷婷综合 | 91av影视 | 中文字幕电影一区二区 | 在线观看中文 | 久久久三级 | 亚洲免费小视频 | 91狠狠综合| 天堂网资源 | 韩国中文字幕在线观看 | 久久精品专区 | 91欧美日韩| 午夜老司机福利 | 日本少妇中出 | 思思99精品视频在线观看 | 91天天| 精品免费囯产一区二区三区 | 日本免费一区二区三区 | 日皮视频免费观看 | 男女涩涩| 日本一区二区在线不卡 | 国产网站久久 | 国产制服91一区二区三区制服 | 久久久久久国产精品视频 | 夜色一区 | 久久久久久久久久久久久久免费看 | 操欧美老逼 | 91久久影院 | 亚洲熟妇av一区二区三区漫画 | 中文字幕在线视频精品 | 精品动漫一区 | 国产精品普通话 | 日产精品久久久久 | 超碰www| 国产在线网站 | 伊人蕉| 国产又黄又猛的视频 | 搞黄视频在线观看 | 国产精品高清无码在线观看 | 久久久av一区二区三区 | 欧美精品一区二区在线播放 | 欧美91| 午夜国产福利在线观看 | 未满十八18禁止免费无码网站 | 国产免费网址 | 麻豆视频一区二区 | 精品国产一区二区三区四区 | 精品伦精品一区二区三区视频 | 波多野结衣一本 | 日韩欧美一区二区三区免费观看 | 欧美视频在线免费 | 欧美一级爱爱视频 | 天天干天天操心 | 天天摸天天摸 | 人妻妺妺窝人体色www聚色窝 | 久久不卡视频 | 男人的天堂va | 国产午夜在线 | 最新毛片基地 | 一久久久 | 久久久国产精品黄毛片 | 青青草视频播放器 | 亚洲国产高清国产精品 | 91国偷自产一区二区三区老熟女 | 国产欧美精品一区二区三区app | 中文字幕第页 | 欧美日韩网站 | 欧美日韩免费做爰视频 | 欧日韩视频 | 国产成人精品在线视频 | 专干中国老太婆hd | 色老汉av一区二区三区 | 黄色91 | a视频网站 | 帮我拍拍漫画全集免费观看 | 另类av小说| 在线观看中文字幕第一页 | 紧身裙女教师三上悠亚红杏 | 无码精品人妻一区二区三区影院 | 黄色影音 | 精品国产制服丝袜高跟 |