手動テストは、自動ツールを使用せずにテスト ケースを手動で実行するソフトウェア テスト プロセスです。すべてのテスト ケースは、エンド ユーザーの観点に従ってテスターによって手動で実行されます。要件文書に記載されているように、アプリケーションが動作しているかどうかを確認します。テスト ケースは、ソフトウェア アプリケーションをほぼ 100% 完了するように計画および実装されます。テスト ケース レポートは手動でも生成されます。
手動テストは、ソフトウェアの目に見える欠陥と隠れた欠陥の両方を見つけることができるため、最も基本的なテスト プロセスの 1 つです。期待される出力とソフトウェアによって与えられる出力との差異は、欠陥として定義されます。開発者は欠陥を修正し、再テストのためにテスターに渡しました。
新しく開発されたすべてのソフトウェアでは、自動テストの前に手動テストが必須です。このテストには多大な労力と時間がかかりますが、これによりソフトウェアにバグがないことが保証されます。手動テストには手動テスト技術の知識が必要ですが、自動テスト ツールの知識は必要ありません。
オペレーティング·システム
手動テストが不可欠なのは、次の理由の 1 つです。 ソフトウェアテスト 基本的には「100% 自動化は不可能」です。
手動テストが必要な理由
アプリケーションが市場に投入され、エンドユーザーが使用しているときにアプリケーションが不安定だったり、バグや問題が発生したり、問題が発生したりする場合。
このような問題に直面したくない場合は、アプリケーションにバグがなく安定したものにし、高品質の製品をクライアントに提供するために 1 ラウンドのテストを実行する必要があります。アプリケーションにバグがなければ、エンドユーザーはアプリケーションをより便利に利用できます。
テスト エンジニアが手動テストを行う場合、エンド ユーザーの観点からアプリケーションをテストし、製品についてより詳しく知ることができます。これにより、アプリケーションの正しいテスト ケースを作成し、アプリケーションの迅速なフィードバックを提供することができます。
手動テストの種類
手動テストにはさまざまな方法が使用されます。各技術は、そのテスト基準に従って使用されます。手動テストの種類は次のとおりです。
- ホワイトボックステスト
- ブラックボックステスト
- グレーボックステスト
ホワイトボックステスト
ホワイト ボックス テストは開発者によって行われ、コードをテスト エンジニアに渡す前にコードのすべての行をチェックします。テスト中にコードが開発者に表示されるため、ホワイト ボックス テストとも呼ばれます。
ホワイト ボックス テストの詳細については、以下のリンクを参照してください。
https://www.javatpoint.com/white-box-testing
ブラックボックステスト
ブラック ボックス テストはテスト エンジニアによって行われ、顧客のニーズに応じてアプリケーションまたはソフトウェアの機能をチェックできます。この場合、テストの実行中にコードは表示されません。それがブラックボックステストとして知られる理由です。
ブラックボックス テストの詳細については、以下のリンクを参照してください。
https://www.javatpoint.com/black-box-testing
グレーボックステスト
グレー ボックス テストは、ホワイト ボックス テストとブラック ボックス テストを組み合わせたものです。コーディングとテストの両方を知っている人が実行できます。また、アプリケーションのブラック ボックス テストと同様にホワイト ボックス テストを 1 人で実行する場合は、グレー ボックス テストと呼ばれます。
グレー ボックス テストの詳細については、以下のリンクを参照してください。
https://www.javatpoint.com/grey-box-testing
手動テストの実行方法
- まず、テスターはソフトウェアに関連するすべてのドキュメントを観察し、テスト領域を選択します。
- テスターは要件文書を分析して、顧客が述べたすべての要件をカバーします。
- テスターは要件文書に従ってテストケースを開発します。
- すべてのテスト ケースは、ブラック ボックス テストとホワイト ボックス テストを使用して手動で実行されます。
- バグが発生した場合は、テスト チームが開発チームに通知します。
- 開発チームはバグを修正し、再テストのためにソフトウェアをテスト チームに渡します。
ソフトウェア構築プロセス
- 要件が収集されると、それは 2 つの異なるチームの開発チームとテスト チームに提供されます。
- 要件を取得した後、関係する開発者はコードの作成を開始します。
- その間に、テスト エンジニアは要件を理解し、必要なドキュメントを準備します。開発者はコードを完成させて、 バージョン管理ツール 。
- その後、UI でコードが変更され、これらの変更は 1 つの別個のチームによって処理されます。 チームを構築する 。
- このビルド チームはコードを受け取り、ビルド ツールを使用してコードのコンパイルと圧縮を開始します。出力を取得したら、その出力は zip ファイルに入れられます。 建てる (アプリケーションまたはソフトウェア)。各ビルドには、(B001、B002) のような固有の番号が付けられます。
- 次に、この特定のビルドがテスト サーバーにインストールされます。その後、テスト エンジニアはテスト URL を使用してこのテスト サーバーにアクセスし、アプリケーションのテストを開始します。
- テスト エンジニアがバグを発見した場合は、関係する開発者に報告されます。
- 次に、開発者はテスト サーバーでバグを再現してバグを修正し、そのコードを再度コントロール バージョン ツールに保存します。これにより、新しい更新されたファイルがインストールされ、古いファイルが削除されます。このプロセスは、安定したビルドが得られるまで続けられます。
- 安定したビルドを取得したら、お客様に引き渡します。
注1
- コントロール バージョン ツールからファイルを収集したら、ビルド ツールを使用してコードを高級言語からマシン レベル言語にコンパイルします。コンパイル後、ファイル サイズが増加する場合は、そのファイルを圧縮してテスト サーバーにダンプします。
- このプロセスは次のように行われます。 チームを構築する 、 開発者 (ビルドチームがいない場合は、開発者が行うことができます) または テストリード (ビルド チームが zip を直接処理し、アプリケーションをテスト サーバーにインストールし、テスト エンジニアに通知した場合)。
- 一般に、すべてのバグに対して新しいビルドを入手することはできません。そうしないと、ほとんどの時間がビルドの作成のみに無駄になってしまいます。
注2
チームを構築する
ビルド チームの主な仕事は、アプリケーションまたはビルドを作成し、高水準言語を低水準言語に変換することです。
建てる
コードをアプリケーション形式に変換するために使用されるソフトウェアです。また、それは、安定するまでのテスト目的でテスト エンジニアに引き渡される、いくつかの機能セットとバグ修正で構成されています。
バージョン管理ツール
これは、次の目的で使用されるソフトウェアまたはアプリケーションです。
- このツールでは、さまざまな種類のファイルを保存できます。
- 同じログイン資格情報を使用してツールからファイルにアクセスするため、ファイルは常に安全です。
- このツールの主な目的は、既存のファイルに対して行われた変更を追跡することです。
ビルド手順例
実際のシナリオでプロセス作業を構築する方法を理解するために、1 つの例を見てみましょう。
テスト エンジニアはバグを見つけるとすぐに開発者に送信しますが、開発者は分析するのに時間がかかります。その後、バグを修正するだけです (テスト エンジニアはバグのコレクションを渡すことはできません)。
開発者は、時間に応じて修正できるバグの数を決定します。そして、テスト エンジニアはテストを中止するわけにはいかないため、ニーズに応じてどのバグを最初に修正するかを決定します。
そして、メールを受け取ったテストエンジニアは、どのバグが修正されたかしか知りません。 バグ修正のリスト 。
最初のビルドでは、開発者がさまざまな機能でコードを記述する必要があるため、時間がかかります。そして最終的にはバグ修正だけを行うことになり、日数は減っていきます。
注3
テストサイクル
テスト サイクルは、すべてのビルドをテストするためにテスト エンジニアに与えられる期間です。
2 つのビルドの違い
1 つのビルドで見つかったバグは、テスト エンジニアの要件に応じて将来のビルドで修正できる可能性があります。新しいビルドはそれぞれ古いビルドの修正バージョンであり、これらの修正はバグ修正またはいくつかの新機能の追加である可能性があります。
新しいビルドを入手する頻度
当初は毎週ビルドを取得していましたが、アプリケーションが安定してきたテストの最新段階では、3 日に 1 回、2 日に 1 回、または毎日でも新しいビルドを取得していました。
取得できるビルドの数
プロジェクト期間を 1 年と考えると、22 ~ 26 のビルドが行われました。
Javaでの選択ソート
バグ修正が完了したら
一般に、バグ修正を理解できるのは、テスト サイクルが完了するか、バグのコレクションが 1 つのビルドで修正され、次のビルドに引き継がれるまでです。
手動テストの利点
- ブラック ボックス方式を使用する場合、プログラミングの知識は必要ありません。
- 動的に変化する GUI デザインをテストするために使用されます。
- テスターは実際のユーザーとしてソフトウェアと対話するため、ユーザビリティやユーザー インターフェイスの問題を発見できます。
- これにより、ソフトウェアに 100% バグがないことが保証されます。
- 費用対効果が高いです。
- 新しいテスターにとっても学びやすい。
手動テストの欠点
- それには多くの人的資源が必要です。
- 非常に時間がかかります。
- テスターは、スキルと経験に基づいてテスト ケースを開発します。すべての機能をカバーしているかどうかの証拠はありません。
- テストケースを再度使用することはできません。新しいソフトウェアごとに個別のテスト ケースを開発する必要があります。
- テストのすべての側面に関するテストを提供するわけではありません。
- 2 つのチームが協力して作業するため、場合によっては互いの動機を理解することが難しく、プロセスに誤解を招く可能性があります。
手動テストツール
手動テスト、つまり単体、統合、セキュリティ、パフォーマンス、バグ追跡などのさまざまな種類のテストでは、 Jira 、 Bugzilla 、 Mantis、 Zap、 NUnit、 Tessy、 LoadRunner、 Citrus、 SonarQube などのさまざまなツールが用意されています。市場。ツールの中にはオープンソースのものもあれば、商用のものもあります。
テスト ツールの詳細については、以下のリンクを参照してください。
https://www.javatpoint.com/software-testing-tools
それらを 1 つずつ理解してみましょう。
ロードランナー
最も一般的に使用されるパフォーマンス テスト ツールです。 LoadRunner は主に、広範囲の手順、多数のアプローチ、およびアプリケーション環境のパフォーマンス テストをサポートするために使用されます。
LoadRunner ツールを実行する主な目的は、パフォーマンスの問題の最も一般的な原因を迅速に分類することです。
LoadRunner の機能
- LoadRunner ツールには n 個のアプリケーションが含まれているため、レポートを理解して説明する時間が短縮されます。
- LoadRunner ツールを使用すると、完全なパフォーマンス テスト レポートを取得できます。
- これにより、分散負荷テストのコストが削減され、展開を追跡するための運用ツールも提供されます。
柑橘類
Citrus は、最も一般的に使用されるテスト フレームワークである統合テスト ツールです。に書かれています Javaプログラミング 言語。これは主に、サーバー側とクライアント側でリクエストと応答を行い、XML JSON ファイルを検証するために使用されます。
Excelで最初の文字を削除する方法
エンドツーエンドのユースケース テストを実行するために、citrus はいくつかの HTTP、JMS、および SOAP プロトコルをサポートしています。
柑橘類の特徴
以下は、Citrus ツールの重要な機能の一部です。
- メッセージの送受信に使用されます。
- Citrus は、オープンソースとして、または市場でライセンスされたものの両方で入手できます。
- 低コストのソリューションを提供します。
- citrus ツールを使用してデータベースを認証できます。
- 一連のメッセージを説明し、テスト計画を提供し、テスト範囲を文書化します。
- メッセージを作成し、応答を検証します。
ザップ
ZAP は、オープンソースの Web アプリケーション セキュリティ スキャナーです。の略です Zed 攻撃プロキシ 。他のツールと同様に、これも JAVAプログラミング言語 。それが最も効果的です オープン Web アプリケーション セキュリティ プロジェクト [オワスプ]。
ZAPの特徴
- Windows、Linux、OS X などの多くのオペレーティング システムをサポートしています。
- プラグインベースのアーキテクチャを採用しています。
- これには、新しい機能や更新された機能を追加できるオンライン マーケットプレイスが含まれています。
- ZAP の GUI コントロール パネルは使いやすいです。
尼僧
NUnit は、最も頻繁に使用される単体テスト ツールの 1 つです。これはオープンソース ツールであり、主に JUnit 。
に完全に書かれていました C# プログラミング言語 そしてすべての人に適しています .Net言語 。
言い換えれば、NUnit ツールは、.Net 言語の多くの特質を活用できるように完全に再設計されていると言えます。 例えば:
NUnitの特徴
- これにより、アサーションをアドバンテージ クラスの静的メソッドとして使用できるようになります。
- データ駆動型のテストを維持します。
- .NET コア Xamarin モバイル、Silverlight、効率的なフレームワークなど、いくつかのプラットフォームをサポートしています。
- NUnit の機能は、テストを同時に実行するのに役立ちます。
- コンソール ランナーを使用してテストをロードして実行します。
ジラ
最も定期的に使用されるバグ追跡ツールは次のとおりです。 ジラ 、オープンソース ツールです。バグ追跡、プロジェクト管理、問題追跡に使用されます。
このツールを使用すると、ソフトウェアに関連し、テスト エンジニアによって作成されたあらゆる種類のバグや欠陥を簡単に追跡できます。
JIRAの特徴
- 時間を節約できるツールです。
- Jira は欠陥や問題を追跡するために使用されます。
- これは文書化タスクを確立するために使用されます。
- Jira は、ドキュメントの改善を追跡するのに非常に便利なツールです。
Jira ツールに関する完全な情報を取得するには、次のリンクを参照してください: https://www.javatpoint.com/jira-tutorial 。
ソナーキューブ
手動テストのもう 1 つのテスト ツールは SonarQube です。これは、継続的なコード品質とコード セキュリティによってワークフローを改善します。プラグインを使用することで柔軟に対応できます。
これは完全に JAVA プログラミング言語で書かれています。 Ant、Maven、Gradle、MSBuild、および定常統合ツールとの完全に自動化された評価と統合を提供します。 SonarQube にはメトリクスの履歴を記録し、推移グラフを表示する機能があります。
ソナークベの特徴
以下は、SonarQube ツールの重要な機能の一部です。
- C、C++、Python、JAVA、HTML、CSS、VB.NET、PHP、COBOL、PL/SQL などのいくつかのプログラミング言語をサポートしています。
- GNU Lesser General Public License に基づいて、Sonarqube は自由に利用できます。
- SonarQube は、GitHub、Active Directory、LDAP などのいくつかの重要な外部ツールと提携しています。
- SonarQube は、Visual Studio、Eclipse、IntelliJ IDEA 開発環境と統合されました。 ソナーリント プラグイン。
Jメーター
JMeter は、静的リソースと動的リソースの両方、および動的 Web アプリケーションのパフォーマンスをテストするために使用されるオープンソース ツールです。
機能テストの動作をロードし、アプリケーションのパフォーマンスを測定するために、完全に JAVA アプリケーション上で設計されています。
これにより、ユーザーや開発者が他のアプリケーションの開発にソース コードを使用しやすくなります。
Javaランダム数学ランダム
JMeterの特徴
以下は、JMeter の重要な特性の一部です。
- プラットフォームに依存せず、次のような JVM を受け入れます。 Windows、Mac、Linuxなど
- インタラクティブでわかりやすい、ユーザーフレンドリーな GUI をサポートしています。
- 複数の種類のサーバーにパフォーマンス テストをロードできるため、非常に拡張性が高くなります。
JMeter の詳細については、以下のリンクを参照してください。
https://www.javatpoint.com/jmeter-tutorial。
バグズと一緒に
手動テストで使用されるもう 1 つのバグ追跡ツールは次のとおりです。 バグズと一緒に 。
これは、アプリケーションのさまざまなバグを追跡するために多くの組織で最も広く使用されています。
Bugzilla は、顧客とクライアントが欠陥を追跡するのに役立つオープンソース ツールです。 Bugzilla は、ALM、Quality Centre などの他のテスト ケース管理ツールと簡単にリンクできるため、テスト管理ツールともみなされます。
Bugzillaの特徴
Bugzilla には、バグを簡単に報告するのに役立つ追加機能がいくつかあります。
- Windows、Linux、Macなどのさまざまなオペレーティングシステムをサポートしています。
- Bugzilla を利用すると、バグをいくつかの形式でリストできます。
- ユーザー設定により、電子メール通知を測定できます。
- Bugzilla には高度な検索機能があります。
カマキリ
Mantis は、Web ベースのバグ追跡システムです。 ManitsBT の略 カマキリのバグトラッカー 。これはソフトウェアの欠陥を追跡するために使用され、PHP プログラミング言語で実行されます。これはオープンソース ツールでもあります。
カマキリの特徴
特定のツールの標準機能の一部は次のとおりです。
- このツールのおかげで、全文検索が可能になります。
- 問題に加えられた変更の監査証跡。
- リビジョン管理システムの統合を提供します。
- テキストフィールドとメモのリビジョン管理
バグ追跡ツールの詳細については、次のリンクを参照してください。 https://www.javatpoint.com/defect-or-bug-tracking-tool 。
テッシー
もう 1 つの統合テスト ツールは次のとおりです。 テッシー 、組み込みソフトウェアの統合テストと単体テストを実行するために使用されます。また、ソフトウェアまたはアプリケーションのコード カバレッジを発見するのにも役立ちます。
JFX Java チュートリアル
ビジネス ニーズ、テスト管理、カバレッジ量、トレーサビリティなど、テスト組織全体を簡単に管理できます。
Tessy には次の 3 つの主要な関数が含まれています。
- テスト インターフェイス エディター (TIE)
- テストデータエディター (TDE)
- ワークスペース。
TESSYの特徴
TESSYの標準機能は以下の通りです。
- テスト実行結果のテストレポートを作成します。
- C や C++ などのさまざまなプログラミング言語をサポートします。
- Tessy は関数のインターフェイスを評価するために使用され、その関数で使用される変数を記述します。
統合テスト ツールの詳細については、リンク https://www.javatpoint.com/integration-testing-tools を参照してください。
概要
この記事では、について詳しく説明しました。 手動テスト: 手動テストの定義、手動テストの必要性、手動テストの種類、手動テスト ツール、手動テストのプロセス、および手動テストの重要な利点と欠点が含まれます。
最後に、これはテスト エンジニアが非常に粘り強く、革新的で、迅速に対応する必要があるプロセスであると言えます。
手動テストでは、テスト エンジニアはエンド ユーザーの解釈と同じように考えて実行する必要があります。
手動テストを実装するには、テスト エンジニアには生産的なスキルと想像力が必要です。また、特定のアプリケーションをテストするには、複数の状況やシナリオを考える必要があります。
現在、自動テストの助けを借りてほぼすべてのアプリケーションをテストできますが、ソフトウェア テストの基礎である手動テストは依然として必要です。