インタフェース自動化テスト例の作成


一、出力インタフェース自動化テストフレームワーク処理プロセス
インタフェーステストフレームワーク:unittest用例の組織、初期化データ、HTML TestRunner生成テストレポート;
プロセスは次のとおりです.
1、テストデータの準備:インタフェーステストフレームワークはまずテストデータベースにテストデータ(例えばTomの個人情報)を挿入する;
2、インタフェース呼び出し:被測定システムが提供するインタフェースを呼び出す(username='Tom');
3、データ処理:システムインタフェースは参照(username='Tom)呼び出しインタフェースによって処理する;
4、データ返却:結果を一定の形式のデータに組み立て、テストフレームに返却する;
5、断言生成テストレポート:ユニットテストフレームワーク断言インタフェースから返されたデータを生成し、テストレポートを生成する.
二、例を挙げる
import requests
import unittest

class GetEventListTest(unittest.TestCase):

    def setUp(self):
        self.base_url = "http://127.0.0.1:8000/api/get_event_list/"

    def test_get_event_list_eid_null(self):
        ''' eid      '''
        r = requests.get(self.base_url, params={'eid':''})
        result = r.json()
        self.assertEqual(result['status'], 10021)
        self.assertEqual(result['message'], 'parameter error')

    def test_get_event_list_eid_error(self):
        ''' eid=901        '''
        r = requests.get(self.base_url, params={'eid':901})
        result = r.json()
        self.assertEqual(result['status'], 10022)
        self.assertEqual(result['message'], 'query result is empty')

    def test_get_event_list_eid_success(self):
        '''    eid        '''
        r = requests.get(self.base_url, params={'eid':1})
        result = r.json()
        self.assertEqual(result['status'], 200)
        self.assertEqual(result['message'], 'success')
        self.assertEqual(result['data']['name'],u'mx6   ')
        self.assertEqual(result['data']['address'],u'        ')


if __name__ == '__main__':
    unittest.main()