自動テストと継続的インテグレーションソリューション


1.インターフェーステストとは何ですか?

インターフェイステストは、システムコンポーネント間のインターフェイスをテストするためのテストです。インターフェイステストは主に、外部システムとシステム間、およびさまざまな内部サブシステム間の相互作用ポイントを検出するために使用されます。テストの焦点は、データ交換、転送、および制御管理プロセス、およびシステム間の相互の論理的依存関係を確認することです。

インターフェーステストは、他のシステムにサービスを提供する基盤となるフレームワークシステムや中央サービスシステムに適しており、主にこれらのシステムが外部に提供するインターフェースをテストし、その正確性と安定性を検証します。インターフェイステストは、上位レベルのシステムのサービスレイヤーインターフェイスにも適用できます。レベルが高いほど、テストが難しくなります。

インターフェイステストは、マルチシステムおよびマルチプラットフォームフレームワークで実装され、非常に効率的な費用便益比を備えています。インターフェイステストは、本質的に、非常に複雑なプラットフォームに効率的な欠陥監視および品質監視機能をもたらします。プラットフォームが複雑でシステムが大きいほど、インターフェイステストの効果はより明白になります。

インターフェーステストの重要性とその比較的簡単な自動化特性に基づいて、インターフェースモニタリングの継続的インテグレーションは、プロジェクトの問題を迅速に発見できます。これは、プロジェクトの継続的運用にとって非常に重要です。

第二に、インターフェーステストのプロセス

1.プロジェクトが開始された後、テスターは開発者を見つけて、インターフェイステストドキュメントをできるだけ早く入手する必要があります

2.インターフェイスのテストドキュメントを入手したら、インターフェイスのユースケースを記述してデバッグできます。

3.インターフェイスのユースケースが作成およびデバッグされた後、継続的インテグレーションテスト環境にデプロイされます。

4.スクリプトの実行頻度、アラームモードなどの基本的なパラメータを設定し、インターフェイスの毎日の監視を実行します

5.インターフェイススクリプトの毎日のメンテナンスと更新、およびインターフェイス例外の処理

3つ目は、インターフェイステストスクリプトを作成する

ほとんどのパフォーマンスツールはインターフェイステストに使用できます。Jmeterは便利なパフォーマンステストツールです。インターフェイステストにも使用できます。Jmeterは、CGI、Webサービス、DB、およびその他のタイプのインターフェイステストに適しています。以下では、インターフェイステストケースの作成方法を説明する例としてwebsevice apiインターフェイスを取り上げます(この記事では、インターフェイステストプラットフォームの構築に焦点を当て、特定のツールの簡単な紹介のみを使用します。ツール、あなたは自分でBaiduすることができます):

以下は私が作成した簡単なスクリプトです。

各リクエストは、応答アサーションを追加して、期待を満たしているかどうかを判断します。

コマンドを使用して実行する場合も、非常に簡単です。

jmeter -n -t test.jmx -l test.jtl

4、インターフェース継続的インテグレーション

私は、主にレポートの表示のために、長い間ここにいます。以前は、他のツール(Ant、Mavenなど)を使用したくなく、jtlファイルのレポートを表示したかっただけでしたが、長い間成功しませんでした。最後に、私はツールに屈し、Antでコンパイルしました。

主にbuild.xmlを構成します

例:

<?xml version="1.0" encoding="UTF-8"?>
<project name="ant-jmeter-test" default="all" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目录-->
<property name="jmeter.home" value="F:\xxxxx\Jmeter" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="F:\xxxxx\resultLog\jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="F:\xxxxx\resultLog\html" />
<!-- 生成的报告的前缀->
<property name="ReportName" value="TestReport" />
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" />

<target name="all">
<antcall target="test" />
<antcall target="report" />
</target>

<target name="test">
<taskdef name="jmeter" classname= "org.programmerplanet.ant.taskdefs. jmeter .JMeterTask" />
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本-->
<testplans dir="D:\test_case_path" includes="*.jmx" />
</jmeter>
</target>

<target name="report">
<xslt in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${jmeter.home}/extras/jmeter -results-detail-report_21.xsl" />

<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>

Jenkinsに「パフォーマンステスト結果レポートの公開」プラグインと「HTMLレポートの公開」プラグインをインストールして構成します。

実行します。

結果は次のとおりです。

並行性や負荷などを追加すると、パフォーマンステストレポートになります。

パフォーマンスレポートのカーブ表示はまだ出ていませんので、お時間のあるときにもう一度ご確認ください。

パフォーマンステストレポートを補足します。

以前にエラーが発生しました:

パフォーマンス:JMeterレポートの記録 '**/*。jtl'

パフォーマンス:「**/*。jtl」に一致するJMeterファイルが見つかりませんでした。レポートは生成されましたか?ビルドをFAILUREに設定する

ビルドステップ「パフォーマンステスト結果レポートの公開」は、ビルド結果をFAILUREに変更しました

終了:失敗

結果が出ないことにつながる。後でJmeter / binはjmeter.propertiesにあります。

jmeter.save.saveservice.output_format = csv

への変更:

jmeter.save.saveservice.output_format = xml

結果は次のとおりです。


最後に、ソフトウェアテストデータ共有の波!

テクノロジー業界では、技術スキルを向上させ、自動化プロジェクトでの実務経験を充実させる必要があります。これは、今後数年間のキャリア計画とテストテクノロジーの習熟度に非常に役立ちます。

ゴールデン9日とシルバー10日の面接シーズン、転職、面接の質問の整理のシーズンは、長年私の習慣になっています!以下は、近年の私のコレクションと並べ替えです。全体は[ソフトウェアテスト]を中心に構成されています。メインコンテンツには、Python自動化テストの独占ビデオ、Python自動化の詳細、インタビューの質問のフルセット、その他の知識コンテンツが含まれます。

あなたと私が会い、あなたが何かを見つけることができますように!ソフトウェアテスト、インターフェイステスト、自動テスト、およびインタビューの経験を交換したい場合。WeChatパブリックアカウントをフォローする:[悲しいスパイシーストリップ]216ページのソフトウェアテストエンジニアのインタビューブックを無料で受け取ります。そして、対応するビデオ学習チュートリアルは無料で共有できます!コミュニケーション学習スカート:313782132

良い記事をお勧めします:

1年の実務経験を持つテストエンジニアとしてパッケージ化されており、面接前のアドバイスは以下のとおりです。

自動テストで正確に何を学ぶ必要がありますか?

Tencentを転職に考えてみませんか?私とガチョウ工場の間の過去について少し話してください

より高度な自動テストと手動テストのどちらですか?

初心者は必見です:資格のあるテストケースを書く方法は?

Pythonログインインターフェイステストの問題の記録と解決策(乾物)

おすすめ

転載: blog.csdn.net/weixin_50829653/article/details/113994290