python + DDT + unittestの+エクセル+要求は、インターフェースの自動化を実現します

インターフェース自動テストプロセス:要件分析-ケースの設計-スクリプト開発-テストの実行-分析結果の
例と試験デザインかどうかを決定することによって1.取得インターフェース文書、文書の取得要求、要求パラメータ、応答パラメータに従って伝送プロトコルを、
2スクリプト開発:インタフェースの呼び出しは、検証の結果
3.テストを実行
4.レポートメッセージ送信
5.結果分析

パッケージをエクセル、辞書を読みます
インポートをxlrdする
CONFインポート*とから


クラスExcelUtil()

「優れ試験から採取された」」、{1カラム名出力は、[列名{:最初の列の1、列名2の最初の列2 1}です。第二列、列名2:第二のカラム2} ...]「」 '
    __init __ DEF(セルフ、excelPath、sheetIndex = 0):
self.data = xlrd.open_workbook(excelPath)
self.table = self.data.sheet_by_index(sheetIndex)
キー値として最初の行を取得
self.keys = self.table。 row_valuesは(0)
行数を取得
self.rowNum = self.table.nrows
#列の合計数を取得
self.colNum = self.table.ncols

DEF dict_data(セルフ):
。self.rowNum <= 1の場合:
印刷(「行の総数より小さい1「)。
他:
R&LT = []
J = 1。
私のリストで(範囲(-self.rowNum 1)):
S = {}
値の第2行から採取された値に対応する
S [ 'たrowNum'] = I + 2
値= self.table.row_values(J)
プリント(値)
リスト内のxの(範囲(self.colNum)):
S [self.keys [X] =値[X]
r.append(S)
J + = 1つの
戻りR

場合__name__ == "__main__":
ファイルパス= xlsPath + '/ test.xlsx'
sheetIndex = 0
データ= ExcelUtil(ファイルパス、sheetIndex)
プリント(data.dict_data())
返回结果:[{ '姓名':1.0 、 '年龄':18.0}、{ '姓名':1.0、 '年龄':20.0}]
使用DDTの数据驱动读取エクセル数据
#usrの/ binに/ Pythonの
#encoding:UTF-8
DDT輸入DDTから、データ、アンパック
輸入unittestの
デバッグ輸入ExcelUtilから
のconfインポートから*
ファイルパス= xlsPath + '/test.xlsx'
sheetIndex = 0
S = ExcelUtil(ファイルパス、sheetIndex).dict_data()
@ddtの
クラスDoubanTest(たunittest.TestCase):
@classmethodの
DEFセットアップ(自己):
プリント( "****スタートテスト*******")
@クラスメソッド
:ティアダウン(自己)DEF
プリント( "****エンドテスト*******")
#1 @data([1、2、3、6])
#@unpack
#DEF test_add(自己、testdata1、 testdata2、testdata3、exceptdata):
#和= testdata1 + testdata2 + testdata3
#self.assertEqual(合計、exceptdata)
@data(* s)は
デフtest_print(自己、A):
プリント(A)

__nameもし__ == '__ MAIN__':
unittest.main()
リターンの結果:

スタートテスト******* ****
{[たrowNum ':2、 '名前':1.0、 '年齢':18.0}
**** *******テスト終了
****スタート*******テスト
{[たrowNum ':. 3、 '名称':1.0、 '年齢':20.0}
**** *******テスト終了



おすすめ

転載: www.cnblogs.com/zyblb/p/10942106.html