1. 程式人生 > >excel+python進行介面測試

excel+python進行介面測試

工作之餘寫了一個超級簡單的excel+python的介面測試指令碼,將多個介面的測試用例寫到表格裡後,指令碼針對單個介面測試它的全用例,然後將返回結果打印出來。之前用postman整合的時候引入excel表格,發現可以跑多個用例,但是我只能看到結果是成功(呈綠色)還是失敗(呈紅色),具體的返回結果看不到,感覺很蛋疼,所以就用初學的python寫了一個小東西,雖然很粗糙,但起碼能滿足我的需求,哈哈

#-*- coding: UTF-8 -*-

import unittest
import urllib
import urllib2
import json
import xlrd


devurl = 'https://xxxx'
rcurl = 'https://xxxx'

testurl =  'userinfo'
sheetname = testurl
casenum = 5

class MyTest(unittest.TestCase):
    def setUp(self):
        pass

    def tearDown(self):
        pass

    def call(self,url,data):
        data = urllib.urlencode(data)

        # 切換伺服器
        url2 = devurl + url + '?' + data
        # url2 = rcurl + url + '?' + data


        # open url
        response = urllib2.urlopen(url2).read().decode()
        # 對介面結果進行json解析
        value = json.loads(response)
        return value

    def Test_Interface(self):
        file = r'E:\xxxe\testcase.xlsx'
        book = xlrd.open_workbook(file)
        table=book.sheet_by_name(sheetname)
        url = testurl
        name = table.row_values(0)
        for i in range(1,casenum):
            data = table.row_values(i)
            data=dict(zip(name,data))
            print(data)
            value = self.call(url,data)
            print(value)
            print(value["retval"])
其實剛接觸介面測試的時候我使用的是phpunit,這個也方便持續整合,但是我還沒有摸索到怎麼樣能夠針對某一個介面進行多用例的方法,後來使用postman覺得環境和global還是很方便配置和更換的,也可以引用excel表格,但還是覺得不方便。工具的使用見仁見智,自己用得趁手就是好工具。作為一個入行不到一年的菜鳥來說,測試的路上還有很多需要學習的地方,能有人同行最好不過。