您好,登錄后才能下訂單哦!
最近被幾個公司實習生整自閉了,沒有基礎,想學自動化又不知道怎么去學,沒有方向沒有頭緒,說白了其實就是學習過程中沒有成就感,所以學不下去。出于各種花里胡哨的原因,今天給大家整一個簡單又有成就感的接口自動化學習吧。
不皮了,進入正題。本文中用到的技術點有:Python基礎、Django基礎、Request庫、一丟丟前端基礎。(考慮到大家零基礎,所以文中代碼編寫使用純新手手法)
1、先創建一個Django項目(具體請參考Django基礎入門教程)
2、創建一個模板,新增一個index.html頁面
<!DOCTYPE?html><html?lang="en"><head> ????<meta?charset="UTF-8"> ????<title>Parker接口測試</title></head><body> ????<h4?>接口測試</h4> ????<form?action="/index/"?method="post"> ????????<table> ????????????<tr> ????????????<td>接口地址:</td> ????????????<td> ????????????????<input?type="text"?name="url"?/>?<br/> ????????????</td> ????????????</tr> ????????????<tr> ????????????<td>選擇方法:</td> ????????????<td> ????????????????<input?type="radio"?name="fun"?value="post"?checked/>POST????????????????<input?type="radio"?name="fun"?value="get"?/>GET????????????</td> ????????????</tr> ????????????<tr> ????????????<td>參數類型:</td> ????????????<td> ????????????????<select?name="leixin"> ????????????????????<option?value="json">Json</option> ????????????????????<option?value="xml">XML</option> ????????????????????<option?value="date">Data</option> ????????????????</select> ????????????</td> ????????????</tr> ????????????<tr> ????????????<td>測試數據:</td> ????????????<td> ????????????????<textarea?name="testdate"?></textarea> ????????????</td> ????????????</tr> ????????????<tr> ????????????<td>預期結果:</td> ????????????<td> ????????????????<input?type="text"?name="exr"?/>?<br/> ????????????</td> ????????????</tr> ????????????<tr> ????????????<td>實際結果:</td> ????????????<td>???????? ????????????????<label>{{?data1?}}</label><br/> ????????????</td> ????????????</tr> ????????????<tr> ????????????<td>測試結果:</td> ????????????<td> ????????????????<label>{{?data?}}</label><br/> ????????????</td> ????????????</tr> ????????????<tr> ????????????<td> ????????????????<input?type="submit"?value="執行測試"?/>???? ????????????</td> ????????????</tr> ????????</table> ????</form></body></html>
3、在項目包中新建py文件,封裝接口調用類
import?requestsimport?jsonclass?cls_api: ????def?post(self,url,par): ????????a_url=url ????????a_par=par ????????res=requests.post(a_url,a_par)????????return?res????def?get(self,url,par): ????????a_url=url ????????a_par=par ????????res=requests.get(a_url,a_par)????????return?res
4、在views文件中添加如下代碼
#-*-?coding:utf-8?-*-from?django.shortcuts?import?renderfrom?django.http?import?HttpResponseimport?jsonfrom?parkerapi?import?postapidef?index(request): ????pt=postapi.cls_api() ????exr=request.POST.get('exr',None) ????data="" ????data1="" ????if?request.method=='POST': ????????data=pt.post(request.POST.get('url',None),?json.loads(request.POST.get('testdate',None))) ????????result=data.json() ????????data1=result['message']????????if?int(result['message']==int(exr)): ????????????data=u'測試通過'? ????????else: ????????????data=u'測試失敗'? ????return?render(request,"index.html",{"data":data,"data1":data1})def?add_args(a,b): ????x=int(a) ????y=int(b)????return?x+ydef?post(request): ????if?request.method=='POST': ????????d={}????????if?request.POST: ????????????a=request.POST.get('a',None) ????????????b=request.POST.get('b',None)????????????if?a?and?b: ????????????????res=add_args(a,?b) ????????????????d['message']=res ????????????????d=json.dumps(d)????????????????return?HttpResponse(d)????????????else:????????????????return?HttpResponse(u'輸入錯誤')????????else:????????????return?HttpResponse(u'輸入為空')????else:????????return?HttpResponse(u'方法錯誤')
add_args函數處理加法運算,index函數接收前端POST數據,處理數據并返回結果,post函數處理接口請求并返回結果
記得添加Django路由
在urls中加入:
運行項目
輸入參數:
執行測試:
好了,以上就是一個簡單的Django接口測試開發,比較適合基礎不好的朋友入門學習
學習最好的老師是興趣,興趣最好的培養就是成就感,希望大家在學習的過程中都能找到成就感。
大家有問題可以留言,積極討論
推薦閱讀
? ? ? ?學軟件測試最好的幾本書,這8本書能幫你很多
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。