より多くのAPIを作成したり、他の人のプロジェクトを引き継いだりすると、特にテスト環境では、APIの運用と保守が増え、さまざまな要因によって、期待に沿わないインターフェイスが表示されます。現時点では、製品やテストを行うときに、あなたが嫌がらせをするようになったとき、あなたの最初の反応はそれを自分で実行して実際のインターフェースの問題があるかどうかを確認し、それを詳細に分析することです。
通常、インターフェイスアドレスがスプライスされ、パラメータが作成されてから、返された結果を確認するためにAPIが要求されます。この種のアクションは、特にインターフェイスが最後に問題ないことがわかった場合は特に、やりすぎた後は通常煩わしいものです。
ツールの選択
選択基準
Swaggerをバッチでインポートできます
自分でテストインターフェイスを構築する機能
バッチで実行できます
レポートを出力できます
警告できるようにするのに最適
候補ツール
jmeter-インターネットで見つけました。最初に気付いたのはjmeterでしたが、インターフェイスが少し粗く、学習コストが少し高いため、当面は考慮していません。
Soupui-古いツールのように見えますが、無料版はレポートのエクスポートをサポートしていないため、私はあきらめました
dredd-これは見栄えがよく、Swaggerをサポートできますが、正常に実行できない場合は大まかに試してみます。
Postman-これは以前にインストールされていましたが、その機能が見つかりませんでした。今では、非常にシンプルで使いやすく、Swaggerもサポートしています。
郵便配達員関連の知識
Swaggerをインポートする
この機能は私にとって最も重要です。左上隅にインポートボタンがあります。[リンクからインポート]を選択して、インターフェイスのSwagger APIドキュメントアドレスを入力できます(例:http://192.168.99.100 :)。 8080 / scm / v2 / api -docsをクリックして、インポートします。
コレクションを設定する
リクエストを保存するときに、既存のコレクションを選択するか、新しいコレクションを作成できます。コレクションは、テストスイートと同等にすることができます。
テストを設定する
自動テストを実行する場合は、ここでスクリプトを設定する必要があります。そうしないと、実行してもあまり意味がありません。最も単純で最も一般的に使用される2行のスクリプトは次のとおりです。
tests ["ステータスコードは200"] = responseCode.code === 200;
tests ['応答時間は500ms未満'] = responseTime <500;
1つはhttpをアサートするステータスコードで、もう1つは応答をアサートします時間。
環境変数を設定する
コレクションのhttpリクエストを選択し、右側の[環境の管理]ボタンをクリックするだけで、環境変数を定義できます。devとprodの2つのセットを定義し、対応する環境のapiホストをそれぞれ設定できます。 、APIリクエストを繰り返し設定する必要がないようにします。 varnameが設定した変数名であると仮定して、{ {varname}}を使用してURL内の 変数を参照します。
ランナーを実行する
左上隅にランナーアイコンがあり、それをタップしてCOLLECTIONRUNNERインターフェースをポップアップします。ここで、バッチ自動テストを実行し、環境を選択して実行します。
newmanコマンドラインの実行
構成のエクスポート
コレクションで、エクスポートし、コレクションV2を選択して、jsonとしてエクスポートします。環境を使用する場合は、環境のjson構成をエクスポートする必要があります。
newmanをインストールします
sudo npm install -g newman
ニューマンバージョンを見る
newman -version
3.4.3
コマンドラインの実行
newman run demo.postman_collection.json --reporters cli,html --environment dev.postman_environment.json --reporter-html-export result.html
コマンドラインの結果は次のとおりです。
┌─────────────────
│ │ executed │ failed │
├─────────────────
│ iterations │ 1 │ 0 │
├─────────────────
│ requests │ 22 │ 0 │
├─────────────────
│ test-scripts │ 22 │ 0 │
├────────────────
│ prerequest-scripts │ 0 │ 0 │
├────────────────
│ assertions │ 44 │ 6 │
├────────────────
│ total run duration: 28s │
├────────────────
│ total data received: 312.29KB (approx) │
├─────────────────────
│ average response time: 1245ms │
└─────────────────────
# failure detail
1. AssertionFai… Response time is less than 1000ms
at assertion:2 in test-script
inside "XXXX" of "app1"
2. AssertionFai… Response time is less than 1000ms
at assertion:2 in test-script
inside "XXXX" of "app2"
3. AssertionFai… Response time is less than 1000ms
at assertion:2 in test-script
inside "XXXX" of "app1"
4. AssertionFai… Response time is less than 1000ms
at assertion:2 in test-script
inside "XXXX" of "app3"
5. AssertionFai… Response time is less than 1000ms
at assertion:2 in test-script
inside "XXXX" of
"app2"
6. AssertionFai… Status code is 200
at assertion:1 in test-script
inside "XXXX" of "app1"
同時に、result.htmlレポートが生成されます。
jenkins統合
ビルド選択Windowsバッチコマンドの実行-上記のコマンドを入力するだけです
JUnitテスト結果レポートの公開-Jenkinsには、junitのxmlテストレポートの解析に使用できるJUnitテスト結果レポートの公開があります。これを使用するには、コマンドラインでjunitのレポートを出力する必要があります
newman run demo.postman_collection.json --reporters cli,html,junit --environment dev.postman_environment.json --reporter-html-export result.html --reporter-junit-export junit-result.xml
最後に、ソフトウェアテストデータ共有の波!
テクノロジー業界では、技術スキルを向上させ、自動化プロジェクトでの実務経験を充実させる必要があります。これは、今後数年間のキャリア計画とテストテクノロジーの習熟度に非常に役立ちます。
ゴールデン9日とシルバー10日の面接シーズン、転職、面接の質問の整理のシーズンは、長年私の習慣になっています!以下は、近年の私のコレクションと並べ替えです。全体は[ソフトウェアテスト]を中心に構成されています。メインコンテンツには、Python自動化テストの独占ビデオ、Python自動化の詳細、インタビューの質問のフルセット、その他の知識コンテンツが含まれます。
あなたと私が会い、あなたが何かを見つけることができますように!ソフトウェアテスト、インターフェイステスト、自動テスト、およびインタビューの経験を交換したい場合。WeChatパブリックアカウントをフォローする:[悲しいスパイシーストリップ]216ページのソフトウェアテストエンジニアのインタビューブックを無料で受け取ります。そして、対応するビデオ学習チュートリアルは無料で共有できます!コミュニケーション学習スカート:313782132
良い記事をお勧めします:
1年の実務経験を持つテストエンジニアとしてパッケージ化されており、面接前のアドバイスは以下のとおりです。