Python之介面自動化初級:開始一個簡單的介面測試

ckxllf發表於2021-03-16

  利用python傳送第一個請求

  關於HTTP請求,建議大家提前瞭解一下,再來看該篇文章

  該篇文章以簡單的登入介面為例:

  首先利用python發請求就會用到request庫,先匯入進來

  import requests

  匯入該庫之後,就開始程式碼主體部分了

  #首先我們要把我們要測試介面API寫進來

  url="

  #緊接著把我們需要的引數定義一下

  userinfo={"username":"大娟",

  "password":"Aa111111"}

  #引數定義完成後,就該讓這個請求帶著這個引數去乖乖的請求伺服器了,下面的程式碼意思為將響應回來的資訊以文字格式給到res

  res=requests.post(url,data=userinfo).text

  #得到響應資訊後,將他列印出來

  print(res)

  

在這裡插入圖片描述

  這個為該介面正常響應回來的資訊,作為測試我們當然要寫個斷言來判斷他響應回來的對不對嘛,

  #.find這個方法是在響應回來的資訊裡面找登入成功四個字,找不到會返回-1負一的值

  msg=res.find("登入成功")

  if msg>0:

  print("測試透過")

  else:

  print("測試失敗")

  一個簡單的介面測試就這麼完成了。

  將請求引數進行引數化處理

  這時候我們用到的是csv檔案,現將csv庫倒進來,還有我們必要的request庫

  import request

  import csv

  下面是程式碼主體,具體解釋我會寫進程式碼裡

  url='

  #上面url就不解釋了,但是userinfo我要說下,這裡為空是因為我一會在檔案裡讀取的內容放到這裡面

  userinfo={}

  #下面的兩個是對檔案的操作,r為對檔案讀(read),w為對檔案寫(write)

  file1=open("interfacePara.csv",'r')

  file2=open("loginResult.csv","w")

  #這個意思為將讀出來的內容放到table裡面

  table=csv.reader(file1)

  我先把interfacePara.csv檔案的樣子給大家看下

   大連人流醫院 mobile.bhbyby.net

在這裡插入圖片描述

  這三列分別為使用者名稱,密碼,以及預期結果

  接下來我們要用迴圈方式去判斷每一使用者是否登入成功

  for row in table:

  #第一次迴圈

  #將讀到的第一行第一列的值給到username

  userinfo["username"]=row[0]

  #將讀到的第一行第二列的值給到password

  userinfo["password"]=row[1]

  #這時候userinfo拿到的值為username="大娟",password="Aa111111"

  response=requests.post(url,data=userinfo).text

  #檢視一下響應回來的資訊

  print(response)

  print(row[2])

  #在響應回來的資訊裡面找csv檔案裡的第一行第三列的值,然後做判斷,寫到檔案loginResult.csv裡面

  r=response.find(row[2])

  if r>0:

  print("測試透過")

  #因為在csv檔案裡每個分割是用逗號分割的所以這個要加上逗號,而且是英文格式的大家不要搞錯,"\n"是換行的意思

  file2.write(row[0]+","+row[1]+","+row[2]+","+"測試透過"+"\n")

  else:

  print("測試異常")

  file2.write(row[0] + "," + row[1] + "," + row[2] + "," + "測試失敗" + "\n")

  這樣一個簡單的介面測試就這麼完成了。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69945560/viewspace-2763170/,如需轉載,請註明出處,否則將追究法律責任。

相關文章