アナフレームワークによるAPIテスト
導入
こんにちは.IT会社のQAエンジニアとして働いています.私はAutotestersのチームリーダーです.UIとAPIのテストを自動化します.私たちは毎日何千ものテストスクリプトを走らせます.スクリプトはPythonで書かれています.
Pythonライブラリ標準ライブラリは非常に良いですが、開発と維持スクリプトは多くの時間がかかります.我々は迅速に開発し、起動し、テスト結果を顧客に提供する必要があります.
テスタの仕事では、顧客にテスト結果をレポートを提供することは非常に重要です.私たちはこれにallureを使います.
テストスクリプトを実行するには、ci/cdを使用します.テストスクリプトを通過した後、テスト結果をレポートが自動的に生成されます.
次のようになります.
The anna ライブラリは、迅速な開発とレポートの生成のために開発されました.
インストール
pip install anna-api-test-framework
使い方
ライブラリを最初にインポートします
from anna import Actions, Report, Asserts
アクションにはHTTPリクエストを実行するメソッドが含まれます.すべての要求と応答データが自動的にレポートに追加されます.
action = Action(url=url)
response = action.request(method=method)
とても便利です.
レポートには、レポートに追加の重要な情報のメソッドが含まれます.ステップ、タイトル、叙事詩、リンク、もう一つのデータなどのように.
@Report.epic('Simple tests')
@Report.story('Tests google')
@Report.testcase('https://www.google.com', 'Google')
@Report.link('https://www.google.com', 'Just another link')
class TestExample:
@Report.title('Simple test google')
@Report.severity('CRITICAL')
def test_simple_request(self):
url = 'https://google.com'
method = 'GET'
want = 200
Report.description(url=url, method=method, other='other information')
assertチェックのメソッドを含む
with Report.step('Checking response'):
Assert.compare(
variable_first=want,
comparison_sign='==',
variable_second=got,
text_error='Response status code is not equal to expected'
)
テストの実行方法
次のコマンドを使用します.
pytest alluredir="./results"
このコマンドはカレントディレクトリからテストを実行し、テスト結果をresults
ディレクトリレポートの生成方法
これを行うには、インストールが必要ですAllure .
次のコマンドを使用してレポートを生成します.
allure generate "./results" -c -o "./report"
レポートは2010年に生成されますreport
ディレクトリオープンレポート
次のコマンドを使用します.
allure open "./report"
次の出力を見ることができます.Starting web server...
2022-04-06 12:58:39.896:INFO::main: Logging initialized @1655ms to org.eclipse.jetty.util.log.StdErrLog
Server started at <http://172.31.22.186:61080/>. Press <Ctrl+C> to exit
あなたがリンクに続くならば、生成されたレポートは開きます結論
このライブラリをすばやくテストスクリプトやデータをレポートの開発に役立ちます.
Anna's repository on github
あなたの注意をありがとう!👍👍👍
これは私の最初の記事です
Reference
この問題について(アナフレームワークによるAPIテスト), 我々は、より多くの情報をここで見つけました https://dev.to/evgeniigerasin/api-testing-with-anna-framework-3g1aテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol