自動テストのためのデータ駆動型テストのさまざまな方法


序文

`

いわゆるデータ駆動テストは、データを変更することで自動テストの実行を促進し、最終的には異なるテスト結果を取得します。簡単に言うと、データ駆動型とはデータのパラメーター化であり、入力が異なると出力も異なります。

データ ドライバーを使用すると、スクリプトの再利用性が向上し、データとスクリプトの分離が実現します。つまり、PO モデルが実装され、自動化されたスクリプトのメンテナンスが大幅に簡素化されます。

データドリブンの手法は数多くありますが、定義された配列や辞書を読み取る方法と、外部ファイル(excel、csv、txt、xml など)を読み込んでデータを取得する方法の 2 つに分類できます。


1. 定義辞典を読む

pythonまたはyamlファイルに直接データを定義し、そのファイルをインポートして辞書内のデータを取得する方法です。

1. Pythonファイルにデータを定義する

以下の図に示すように、Python ファイルにはバックグラウンド ログイン インターフェイスのさまざまなパラメーターが定義されており、
Pythonパラメータ定義
ユース ケースでパラメーターを取得し、さまざまなテスト ケースを定義します。
ここに画像の説明を挿入します

2. 外部ファイルを読み取る

1. Excel ファイルの各ページに対応するユースケースパラメータを次のように入力します。

ここに画像の説明を挿入します

2. Excel ファイルのパラメータを取得するためのパブリック メソッド クラスを定義します。

ここに画像の説明を挿入します

コードは以下のように表示されます。

import xlrd

# 通过excel文件地址获取excel文件内容,返回为list列表
def read_excel_datas(fileAddr: str, sheetName:str) -> list:
    """
    通过excel文件地址获取excel文件内容(所有内容)
    :param sheetName: sheet的名字
    :param fileAddr: 文件地址
    :return: list内容
    """
    rDatas = []
    fileData = xlrd.open_workbook(fileAddr)

    sheetLen = len(fileData.sheets())
    for i in range(sheetLen):
        datas = []
        sheet = fileData.sheet_by_name(sheetName)
        for item in range(sheet.nrows):
            if item == 0:
                continue
            datas.append(sheet.row_values(item))
        rDatas.append(datas)
    return rDatas[0]

要約する

以上が今日お話しする内容です。この記事では、インスピレーションを提供するために、データ駆動型テストの 2 つの方法を簡単に紹介します。より良い方法がある場合は、メッセージを残して議論してください。

おすすめ

転載: blog.csdn.net/liangxiaoyan0426/article/details/130871024