インターフェース自動テストのアイデアと実践 (2): モジュール型テスト スクリプト フレームワーク

目次

モジュール式テスト スクリプト フレームワーク

シーン 1:

ステップ 1. common フォルダーに新しい common_function.py ファイルを作成し、メソッドをカプセル化します

ステップ 2. 以下に示すように、test_create_user_tag_api.py ファイルにパブリック モジュールをインポートし、元の冗長コードを削除します。

シーン 2:

ステップ 3. 共通フォルダーに新しい local_config.py ファイルを作成します

ステップ 4. 以下に示すように、local_config.py ファイルの値をユースケースレイヤーに入力します。


モジュール式テスト スクリプト フレームワーク

  テストするアプリケーション用に、独立した記述可能なモジュール、プログラム スニペット、およびスクリプトを作成する必要があります。これらの小さなスクリプトを組み合わせて、特定のテストを個別に実行するために使用できるテスト ケース スクリプトを形成できます。

シーン 1:

  開発では、access_token インターフェイス アドレスを /cgi-bin/token から /cgi-bin/get_token に変更するか、パラメータなどを変更しました。 ==> 開発では、一般的に使用されるインターフェイス情報を調整しました。このシナリオでは、テスト スクリプトの大部分がメンテナンスが必要であり、今後の調​​整が心配なので、モジュール化されたテストフレームワークを使用して解決します。

  トークン取得操作はコード内で頻繁に使用するため公開しておきます。

ステップ 1. common フォルダーに新しい common_function.py ファイルを作成し、メソッドをカプセル化します

 コードを書きます:

# encoding: utf-8
# @author: Jeffrey
# @file: commom_function.py
# @time: 2022/7/26 21:01
# @desc: 模块化框架
import jsonpath

def get_access_token_value(session_obj):
    """获取access_token的值"""
    url_params = {"grant_type": "client_credential",
                  "appid": "wxf14419077f707856",
                  "secret": "92a113bd4b5ffdc72144740dc7123c99"}
    response = session_obj.get(url="https://api.weixin.qq.com/cgi-bin/token",
                                params=url_params)
    # 获取响应json中的access_token的值
    token_value = jsonpath.jsonpath(response.json(), "$.access_token")[0]
    return token_value

ステップ 2. 以下に示すように、test_create_user_tag_api.py ファイルにパブリック モジュールをインポートし、元の冗長コードを削除します。

上記のコードの利点: 1. コードの冗長性が削減される; 2. メンテナンスが容易になる (上記のシナリオ)

シーン 2:

ドメイン名を api.weixin.qq.com から 192.168.1.12 に切り替えるなど、会社のテスト環境のアドレスが変更されました。

ステップ 3. 共通フォルダーに新しい local_config.py ファイルを作成します

ステップ 4. 以下に示すように、local_config.py ファイルの値をユースケースレイヤーに入力します。

実行結果の表示

注: 上記のユース ケース レイヤーを介して実行する場合、各ユース ケースは access_token を 1 回取得する必要があります。実際、access_token は取得ごとに 2 時間有効ですが、これは後で解決します。


以下は、私が収集した比較的優れた学習チュートリアル リソースです。それほど価値はありませんが、必要になった場合は、コメント エリア [777] にメッセージを残して、そのまま持ち帰ってください。

情報が欲しい友達はいいね+コメント+集めて3回連続でお願いします!

3ラウンド連続で終わったら、コメント欄に個別メッセージを送ります〜

 

おすすめ

転載: blog.csdn.net/m0_70618214/article/details/133242771