試験方法

テスト設計技法

1)テスト設計技法 とは? テスト設計技法 は、具体的に特定のシステムで 可能なテストの総数から 適切なテストセットを選択するのに役立つ。ソフトウェアのテスト技法には さまざまな種類が あり、それぞれに 長所と短所がある。 完全なテストは  不可能であるため、手動テストは、テストの品質を確保しながら テストケースの数を減らし、識別が難しいテスト範囲 と 条件を識別するのに役立つ。 2. テスト設計技法の種類 テスト設計技法 には多くの種類が ありますが、主に次の2つの種類がある。 2.1) 静的テスト 静的テストは、ソースコードを実行し、または ソフトウェアシステムを実行しないタイプのテスト 技法だ。例えば、仕様書、設計書、ソースコードの確認によるエラーの発見など。 ソフトウェア開発のライフサイクルの早い段階で 行われるため、検証プロセスで 行われる。 静的テスト技法は、ソースコード、設計とモデルのドキュメント、機能仕様、必要な仕様など、あらゆる形式のドキュメントをテストするために 使用できる。 静的テスト手法には 通常、次の方法が 含まれる。 非公式レビュー:ミーティングのアーカイブを必要としない、または 記録する必要がない評価プロセス。 ウォークスルー:これは、テストサイクルの参加者に 知識を伝達するために、ソフトウェアロジックに 精通している人が 説明する一種の指示。 テクニカルレビュー: ソフトウェアの技術評価に 焦点を当てている。モデレーター または 技術専門家が関与する技術知識を持つ人が 主導。 技術的なコンテンツについて 合意に達して 意思決定することに 焦点を当てたディスカッションだ。 検査: その目的は、プロセスにおける各人の役割 と ソフトウェアの入出力基準を明確に定義すること。これにより、エラーを発見し、プロセスを最適化するために 集計および分析する。 2.2) 動的テスト 動的テスト技法は、コードが 実行されたとき、またはコードを実行して、アプリケーションの機能を確認するための一種のテスト。 つまり、動的なテストは、実際に アプリケーションを使用して、関数が期待どおりに…

試験方法

ホワイトボックステスト

ホワイトボックステスト ソフトウェア製品は 人間によって 構築されているため、間違いがあるはず。したがって、問題やエラーがないかどうかを確認するために、個人、グループ、または組織をテストする必要がある。ソフトウェアテストでは、テストの各レベルで 効果的なテスト戦略と手法も必要。 ソフトウェアテストは、ホワイトボックステスト と ブラックボックステストという、異なるスキルを必要とする2つの部分で 構成されている。 このトピックでは、ホワイトボックステストについて 詳しくご説明いたします   1) ホワイトボックステストとは ホワイトボックステストとは システムのテスト手法の中、特にどのような論理構造で 作成されているかに 着目したテストのことである。 ホワイトボックステストでは、プログラムの外部仕様には 着目せず、論理を実現するために使われている命令や、分岐が正しく動作するか、といった部分について チェックが行われる テスターは、コードを介して パスを実行する入力を選択し、適切な出力を決定する。 したがって、プログラミングのノウハウ と 実装の知識は 不可欠。   2) ホワイトボックステストの対象 テストオブジェクトは ソフトウェアコンポーネントだ。 ソフトウェアコンポーネントは、機能、機能モジュールなど。   3) 該当レベル ホワイトボックステストは、次のレベルのソフトウェアテストに適用できる。 単体テスト:プログラムを構成する比較的小さな単位(ユニット)が 個々の機能を正しく果たしているかどうかを検証するテスト。 統合テスト:システム開発におけるプログラムの検証作業の中でも、手続きや関数といった個々の機能を結合させて、うまく連携・動作しているかを確認するテスト。 システムテスト:システムやソフトウェアを構築したあとに 実行するテスト。   ただし、これは主に単体テストに適用される。   4) ホワイトボックステストの長所と短所 長所 テストは より早い段階で 開始できる。 テストは より徹底的で、ほとんどのパスをカバーする可能性がある。 短所 テストは 非常に複雑になる可能性があるため、プログラミング と 実装に関する完全な知識を備えた高度なスキルを持つリソースが必要。 実装が頻繁に変更される場合、テストスクリプトのメンテナンスは…

LQA-logo

モバイルアプリケーション テスト チュートリアル2

モバイルアプリケーション テストは モバイルテストの中の 一種です。詳細 については、モバイルテストチュートリアル1の記事の モバイルテストの部分を参照してください。 1、モバイルアプリケーションのカテゴリ   モバイルアプリケーションの場合、次の3つのカテゴリに分類できます。 ・タイプ1:ネイティブアプリ、iOS、Android、Windowsなどのプラットフォーム専用に それぞれの言語で 記述されたアプリ。 ・タイプ2:Webアプリケーション、Webベースのアプリケーション。モバイルデバイス ユーザーは、Chrome、Firefox、Safariなどのさまざまなブラウザーを使用して、m .facebook.comなど の使用するWebサーバーに アクセスします。 ・タイプ3:複合アプリケーション、ネイティブアプリケーション と Webアプリケーションの組み合わせは、オフラインとオンラインの両方で 実行でき、HTML5、CSSなどのWeb作成技術が よく使用されます。 これを考慮すると ・ネイティブアプリケーションは 特定のオペレーティングシステムでのみ実行できますが、モバイル Webアプリケーションは HTML および Javascript をサポートするすべてのモバイルブラウザーで 実行できます。 ・ネイティブアプリケーションは SDKなどのプラットフォームで 記述され、モバイル Webアプリケーションは HTML、CSS、ASP.NET、JAVA、PHPなど のWebテクノロジーで 記述されています。 ・ネイティブアプリケーションの場合、インストールする必要がありますが、モバイル Webアプリケーションの場合、インストールする必要は ありません。 ・ネイティブアプリケーションは アプリストアから更新できますが、モバイル Webアプリケーションは 一元的に更新されます。 ・ネイティブアプリは インターネットに接続していなくても 動作する場合がありますが、モバイルウェブアプリは 常に インターネット接続が必要です。 ・ネイティブアプリは、モバイルウェブアプリよりも 高速に動作します。   2、モバイルアプリケーションをテストするための特別なテストケース  …

テストの種類

テストの種類

テストの種類 と テストレベルは、多くの人がよく混乱する2つの概念であり、これらもISTQBテストで よく尋ねられる2つです。前回の記事では、テストレベルについて 説明いたしましたので、今回はテストの種類について お伝えたいと思います。 1、機能 テストの種類 機能テストは、コードの特定の動作または機能を検証するテストを指します。これらは通常、要件や仕様書に記載されていますが、一部の開発方法論ではユースケースから機能します。機能テストではよく「ユーザーがこれを実行できるか」と考えます。   機能テストは、需要とビジネスプロセスの2つの観点から実行できます。  需要の観点から  +機能要件の仕様書を設計のテストの基礎として使用。  +要件の内容は、最初のテスト項目にも、テスト済みまたは未テストの項目のリストとしても使用可。  +テストプロセスの優先順位の要件に基づき、高リスクの要件を優先させる必要がある。    ビジネスプロセスの観点から  +ビジネスプロセスでは、システムの日常業務に関して説明する。  +ユースケースはオブジェクト指向開発から派生してるが、現在では多くの開発ライフサイクルで一般的になっている。  +ビジネスプロセスを出発点として、ビジネスプロセスはユーザーが実行するタスクから派生する。  +ユースケースは、ビジネスの観点から見るとテストケースの有用なベーである。   機能テストの特徴  ・セキュリティ:プログラム及びデータへの偶発的または故意の不正アクセスの防止。  ・適合性:ユーザーのニーズに対するソフトウェアの適合性。  ・相互運用性:ソフトウェアと他のシステムとの相互作用。  ・精度:ソフトウェアによって提供される結果の精度。  ・コンプライアンス:規格、規則、規制、法律、等の機能に関連するコンプライアンス。   機能テストの種類  ・スモークテスト:スモークテストは、ソフトウェアに深刻な問題があるかどうかを判断するために使用されます。  ・機能テスト  ・UIテスト  ・データとデータベースの整合性テスト  ・ビジネスサイクルテスト  ・アクセス制御テスト      機能テスト五つのステップ ・目的のソフトウェアが実行する機能を決定します。 ・仕様書に基づいて入力データを生成する。 ・仕様書に基づいて出力を決定します。 ・テストケースを実行します。 ・実際の結果と要件を比較します。   2、非機能テスト 機能テストの特徴 ・使いやすさ:使用に必要な労力 ・保守性:特定の変更を行うために必要な労力 ・信頼性:指定された条件下で指定された期間、そのパフォーマンスを維持するソフトウェアの機能 ・移植性:ある環境から別の環境に転送されるソフトウェアの機能 ・効率:所定の条件下でのソフトウェアのパフォーマンスと使用されたリソースの関係   非機能テストの種類 ・性能試験 パフォーマンステストは、通常、特定のワークロードでのシステムまたはサブシステムのパフォーマンスまたは応答性と安定性を決定するために実行されます。…

ソフトウェアテスト – 日本企業のアウトソーシング

ソフトウェアテスト は、20年以上前、プログラミング、要件分析などの仕事に隠れた地味なものでした。しかし今やITオフショアサービス業界の発展に伴い、ソフトウェアテストは徐々に情報技術(IT)業界を代表する分野になりつつあります。

ソフトウェアテスト市場の現状

ソフトウェアテスト-市場

以前は、ソフトウェアテストは多くの場合、単にソフトウェア開発の一部だと解釈されていました。 したがって、ソフトウェアテストは「二次的な」仕事であり、開発側に大きく依存しており、産業としても仕事としても発展する可能性がないという考えが多くありました。

大学でさえ、ソフトウェアテストの知識とスキルが教育に取り入れられているものの、時間が限られており、ソフトウェアテストの専門のトレーニングコースはありません。

 

ソフトウェアテストのアウトソーシングは本当に企業にとっていいのか?

software testing-best-direction-outsourcing

 

ソフトウェアテストの重要性は、顧客の信頼を構築するための基盤である製品品質の確保に役立つため、軽視できません。このことから、ソフトウェアテストはIT業界の中でますます存在感が大きくなっています。2016年から2020年にかけて、この市場は11%成長すると予測されています。

また、ITオフショアサービス業界の競争圧力の下では、一般的に、IT企業とアウトソーシング先企業はそれぞれ異なる価値を持ち、それぞれが市場の中で生き残っていく方針を見つけ出す必要があります。ソフトウェアテストはそれに対する解の一つでもあります。

それだけでなく、ソフトウェアテストとプログラミングにはさまざまな専門技術が必要なので、専門的なソフトウェアテストサービスの開発が不可欠になります。2010年以降、世界中のIT企業の一部は、Dell、Hitachi、Toshiba、NEC、Mitsubishiなどのソフトウェアをテストするために、オフショア先としてベトナムのソフトウェア会社を採用し始めています。

テストアウトソーシングのパイオニアたち

software testing-best-direction-outsourcing

ソフトウェアテストアウトソーシングサービスについては、Global CyberSoft、TMA、PSV、Shift Asiaなどが成功例として挙げられます。LQAのように、テストアウトソーシングの可能性に備えて、さまざまな企業が設立されています。

(https://www.lotus-qa.com/body-shopping-tester/)

 

テストサービスの詳細については、こちらを参照してください。


Lotus Quality Assurance (LQA)

電話番号: (+84) 24-6660-7474
メール: hello@lqa.com.vn
ウェブサイト: https://www.lotus-qa.com/

試験方法 の注意点

ソフトウェア業界には、現在非常に多くの 試験方法 が適用されています。この記事では、最も一般的に適用される3つの基本的なテストと、その長所と短所を紹介します。ブラックボックステスト、ホワイトボックステスト、グレーボックステストを紹介いたします。   1、ブラックボック 試験方法   1−1、ブラックボックステストの定義 ブラックボックステストは、内部構造や動作を覗き込むことなく、アプリケーションの機能(ソフトウェアの機能など)を調べるソフトウェアテストの方法です。 1−2、ブラックボックステストの長所 ・テスターはコードの知識を理解する必要がない。 ・より多くのバグを見つけられる。 ・開発者が自分で客観的なテストを行うことができる。 1−3、ブラックボックステストの短所 ・少数の入力のみをチェックでき、多くのプログラムパスまたは少数のセクションはチェックされない。 ・ソフトウェア設計者/開発者がテストした場合、テストが冗長になる可能性がある。   2、ホワイトボックス 試験方法   2−1、ホワイトボックステストの定義 ホワイトボックステスト(クリアボックステスト、ガラスボックステスト、透明ボックステスト、または構造テストとも呼ばれます)は、ブラックボックステストとは対照的に、内部構造またはアプリケーションの動作をテストするソフトウェアをテストする方法です。ホワイトボックステストは、ソフトウェアテストプロセスのユニット、統合、およびシステムレベルで適用できますが、通常はユニットレベルで実行されます。 2−2、ホワイトボックステストの長所 ・自動化が簡単。 ・テストを停止するときは、明確な技術ベースのルールを提供する。 ・テストの専門家にエラーテストについて慎重に考えさせるので、バグが完璧に見つかる。 2−3、ホワイトボックステストの短所 ・時間と手間がかかる。 ・依然エラーを完璧に発見することはできない。 ・テストに関する広範な経験と専門知識が必要。   3、グレーボックス 試験方法   3−1、グレーボックステスの定義 グレーボックステストは、ホワイトボックステストとブラックボックステストの組み合わせです。このテストの目的は、不適切な構造またはアプリケーションの不適切な使用に起因する欠陥を見つけることです。 3−2、グレーボックステスの長所 ・ブラックボックステストとホワイトボックステストの組み合わせであるため、より最適な場合がある。 ・グレーボックス方式によるテストでは、複雑なテストシナリオをよりスマートに設計できる。 3−3、グレーボックステスの短所 ・分散システムアプリケーションのグレーボックステストを実行する場合、エラーをリンクすることは困難。 4、三つの試験方法の比較 ブラックボックステスト グレーボックステスト ホワイトボックステスト アプリケーションの内部構造が必要 テスターは、アプリケーションの内部動作に関する知識が少ない テスターは、アプリケーションの内部動作に関する完全な知識を持っている エンドユーザー、テスター、開発者によって実行 エンドユーザー、テスター、開発者によって実行 テスターと開発者が行う 外部の予想に基づく-アプリケーションの内部動作は不明 高レベルのデータベースダイアグラムとデータフローダイアグラムに基き行う 内部の仕組みは完全に分かり、それに応じてテストデータを設計 網羅的、短時間…

モバイルアプリテスト-ウェブテスト-違い

モバイルアプリテスト & ウェブテストの違い?

モバイルアプリテスト & ウェブテストの違い? みなさんご存知の通り、テクノロジーの発達により、スマートフォンやタブレットといったスマートデバイスが広く普及しています。このような時代の流れにより、より高品質で、豊富で様々なコンテンツのアプリが求められるようになってきています。そして、これは開発側、テスタ側にとっては大きなチャレンジでもあります。特に、これまでウェブテストにしか関わってこなかったテスターにとっては尚更です。 それでは モバイルアプリテスト はウェブテストとはどのように異なるのでしょうか? 1、モバイルアプリテスト はより多くのテストプラットフォームを持つ モバイルアプリテスト は、モバイル機器の種類が多いため、はるかに複雑になります。モバイルアプリが全てのメーカー( Samsung, Sony, Nokia, HTC, Apple …)の全ての種類の機器(スマホ、タブレット) 、または全てのOS(iOS, Android, Windows, Blackberry …)のもとで動くことを保証することは至難の技です。 そのため、テスターはそれぞれに可能な限り多くのテストケースを用意し、安定したモバイルアプリケーションの構築ために、さまざまなデバイスでできるだけ多くのテストを実行する必要があります。   2、モバイルアプリテスト は頻繁に画面サイズが変わる   多くのメーカーは他のベンダーと競合するために、ユーザーのニーズや好みに合わせて断続的にスマホやタブレットの画面サイズを変更する傾向があります。そのため、テスターがテストを行う際は、新しい規格のインタフェースがレイアウトに不具合を起こさないかどうかを確認するために、様々な画面サイズを用意してテストをする必要があります。サイズボタン、テキストボックス、ラジオぼたんが変更されたかどうか等。 3、モバイルアプリテストにはUXが必要 開発者は、システムの機能が適切に動作するかどうかのみを気にすればいいですが、テスターにとっては、ユーザーをサポートするためにUX(ユーザーエクスペリエンス)が必要です。様々な状況下で使用が困難、または使用できない場合アプリケーションは未熟であるとみなされます。モバイルアプリケーションは全ての状況下で使用できるようにユーザーをサポートする必要があります。   4、モバイルアプリテストにはユーザーとの関係性が強い Webテストでは、テスターはキーボードまたはマウスを介してのみシステムと対話します。しかし、モバイルアプリテスト の場合は、タッチ、手を振る動き、目の動き、音などのさまざまな情報を扱います。そのため、テストするときは、それらのテストケースに対応する必要があります。 5、データのセキュリティとプライバシー 写真やビデオなどのアプリケーションは、プライバシー保護の観点から、他のフラットフォーム機能からアクセスできないようにする必要があります。モバイルアプリテスト の場合、カメラアクセス、写真データアクセスなどのデータアクセスとプライバシーのテストケースがあります。   6、モバイルアプリテストのエミュレーターとシミュレーターへの過度の依存が、実際のデバイス体験の欠如につながる ウェブのテストでは、テスト時の仮想環境と実際の武ライジングの間のギャップは非常に少ないです。モバイルアプリテスト の場合、よくエミュレーターやシミュレーターを使ってテストを行いますが、これらの環境は実際のデバイスを使用する時の感覚とは異なります。よって、エミュレーターやシミュレーターでは実行できないテストケースがあります。テスターはこのようなケースにも対応してテストを行う必要があります。 7、インストール、削除、アップデートに関するケース モバイルアプリケーションは頻繁にインストール、削除、アップデートされるため、テスト時には、新しいバージョンがどのように変化し、アプリケーションの動作に何が影響するかを把握する必要があります。 ではユーザーが複数のデバイスを持っている場合、またそれらのデバイスに異なるバージョンのアプリケーションがある場合はどうなるでしょうか。互換性、複数のバージョンの同時サポート、データストレージ、複数回のインストール/アップグレード機能など。これらの動作を安定させる上でアプリケーションのテストは重要な役割を果たします。 8、他のアプリの通知がきたときにアプリが機能するかどうか モバイルアプリケーションでは、ユーザーは多くの場合他のアプリケーションからの通知よって邪魔されます。このような通知や着信による邪魔が入ったときに、どのようにしてそれまで使っていた進行中のアプリの動作をうまく停止して保存するかは非常に重要です。このようなことはウェブのテストではありません。 9、機器の特別な機能のテスト テストの際には多くの懸念点があります。 ・アプリがどのくらいデータを消費するのか ・アプリがどのくらい電力を消費するのか ・アプリがバッテリーが少なくなった状況で動作するか ・どのくらい不要なデータが生成されるか   テストサービスの詳細については、こちらを参照してください。 Lotus Quality Assurance…

モバイルテスト

モバイルテスト チュートリアル1

モバイルテスト & スマートデバイスは近年のトレンドで、私たちの生活を変えつつあります。日々何百万ものアプリケーションがAppストアやGoogle Playからダウンロードされています。モバイルアプリは、教育、ヘルスケア、エンタメ等の社会の様々なニーズに対応して開発されています。モバイルテストはその中でも非常に重要な存在となっています。テストは高品質な製品を市場に投入する開発プロセスの中で非常に重要な役割を担っています。 1、モバイルテスト にはどのような意味があるのか? モバイルテスト によって、モバイルデバイスの機能や使いやすさ、システムの一貫性等の性能の品質が保証されます。 モバイルテストサービスについてもっと見る。   2、モバイルテストの種類 モバイルテストにはハードウェアテストとソフトウェアテストの二種類があり、ソフトウェアテストにはモバイルアプリケーションテストが含まれます。 2−1、ハードウェアテスト:プロセッサ、液晶の大きさ、解像度、メモリ、カメラ、ラジオ、Bluetooth、Wifi等をテストする。 2−2、ソフトウェアテスト(モバイルアテスト):モバイルアプリケーションのテスト。(ハードウェアテストと区別するためにモバイルアプリケーションテストとも呼ばれます) 3、モバイルテスト と他のテストの違い 3−1、モバイルテスト のデバイスの種類の豊富さ HTC、SAMSUNG、Apple、Nokia等の違うメーカー同士の製品は、液晶パネルやハードウェアの企画が違っている。 ・マルチプラットフォーム (iOS 6,7,8, Android 4.2; 4.3; 4.4, BB 5; BB6 …) ・デバイスごとにアプリケーションの稼働時間が異なる   3−2、デバイスのハードウェアによる制約 ・情報処理速度の限界 ・メモリ容量の限界 ・WAP / HTTPのプロトコルの違い   3−3、モバイルテスト のネットワークコネクションの難しさ ・ネットワークの違い(GSM / GPRS / WIFI / 3G …) ・データ送信の時間が予測できない ・物理的な接続速度の違い ・異なるネットワーク機能を持つ様々なネットワークのオペレーター   3−4、テストの種類 モバイルテスト に加えて、下記のような種類のテストがあります。…

第三者検証

第三者検証

テストは、ソフトウェアのライフサイクルを決定する重要な要素です。 高品質のソフトウェアのため、第三者検証の役割は何ですか?

第三者検証とは?

第三者検証(TPV)とは、ソフトウェア/システム開発者ではない人が、第三者の観点からソフトウェア/システムの品質を検証及び評価することを意味します。第三者検証により、開発者が気付かない欠陥を検出し、信頼性の高い高品質なソフトウェアを構築することができます。

包括的なシステムテスト、及び受入テストは、コストと納期のために削減される場合があり、十分なノウハウがなくても実行されることがあります。

 

第三者検証-Vモデル

 

ソフトウェアテストに特化し豊富な経験を持った専門チームがノウハウを蓄積し、効率的なテストを実現します。これにより、テスターエンジニアの慢性的な人材不足を解消することができます。

 

第三者検証を選ぶ理由

何故第三者検証が必要なのか?

1、ソフトウェアの品質を高めるため

サードパーティの検証は、ソフトウェアの品質を客観的に保証するために不可欠です。テストチームは開発側から独立し、製品が顧客の要件を満たしているかどうか、高品質であるかどうかを確認しています。独立したテスターは、開発側で働いているテスターよりも多くのエラーを見つけることができます。

2、経験豊富で熟練した人材

独立したテスト機関は、最良の方法でテストを実施するための経験豊富で熟練した人材を揃えています。

第三者検証-テストサービス

3、三者検証によりライフサイクルコストが削減

独立したテスト機関が気にしているのは、製品の品質要件への準拠です。将来的にメンテナンスを拡張する機能は、メンテナンスコストの削減に役立ちます。

第三者検証-メンテナンスコスト-削減

 

テストサービスの詳細については、こちらを参照してください。


Lotus Quality Assurance (LQA)

電話番号: (+84) 24-6660-7474
メール: hello@lqa.com.vn
ウェブサイト: https://www.lotus-qa.com/

テストについて知っておくべきこと

テストはテストの実装と言われることがありますが、これはソフトウェアとテストの実行のことを意味しています。テストの実装には、作ったソフトウェアを実際に動かして動作を確認するテストだけでなく、要件定義書、機能仕様書、ソースコードのレビューなど、様々なテストがあります。   テストの主な目的には以下のようなものがあります ・テストエラーを見つけること ・品質管理 ・製品の決定をサポートするための情報 (リリースされたかどうかなど) を提供すること ・エラーの発生を防ぐこと   テストとデバッグの違いとはなんでしょうか。テストはエラーを見つけることです。デバッグはエラーの原因を見つけて修正することです。テストの責任は一般的にテスターにありますが、デバッグの責任は開発側にあります。   A> テストの7原則 原則1:テストは欠陥があることしか示せない テストを通じて、ソフトウェアにエラーを見つけることはできますが、完全にエラーが起きないということを示すことはできません。テストをして故障が起きなかった場合、本当にそのソフトウェアに欠陥がなかったのかもしれませんが、偶然エラーが起きなかっただけの可能性があります。テストではソフトウェアのエラーを減らすことはできますが、エラーがなかった場合でも、そのソフトウェアが欠陥が無いということは証明できないのです。 原則2:全数テストは不可能である 全数テストとは、ソフトウェアに入力する可能性のある全てのパターンをテストすることです。データが膨大になり過ぎてしまう為、非常にシンプルなソフトウェアを除いてこれは一般的に不可能です。実際のテストでは、全てのケースをテストする代わりに、ポイントを絞ってテストが行われています。 原則3:できるだけ早くテストする バグの発生を防ぎ、バグを早く発見する為に、ソフトウェアの開発の段階からテストを進めるべきです。 原則4:エラーの偏在 ソフトウェアのエラーは特定のモジュールに集中していることが多いことから、過去の分析結果などを参考にしながら、テストの焦点を絞るのが良いとされています。 原則5:農薬のパラドクス 農薬を使っていると、そのうち害虫が耐性を持ち、効かなくなってくるのと同じように、ソフトウェアテストにおいても、同じテストを繰り返している中で、そのテストでは新たなエラーが見つからなくなってきます。これを回避する為に、定期的にテストケースを見直して、変更していく必要があります。 原則6:テストは要件次第 違う要件の下では、テストのやり方は変わってきます。例えば、銀行のシステムとウェブサイトでは、テストのやり方は完全に違います。ソフトウェアが使用される状況や目的に合わせてテストのやり方は変える必要があります。 原則7:「バグゼロ」の落とし穴 システムのテストエラーが起きないようにすることに集中しすぎて安心してはいけません。テストの工程の中で、欠陥を修正したことによる影響範囲や、新たな欠陥が無いか確認しないといけないからです。   B> 基本的なテスト段階 1、テスト設計とコントロール テスト設計は、テストの目的と仕様の決定作業です。 テスト制御とは、テスト中の計画と進捗を比較する作業です。   2、テスト分析と設計 抽象的な要件を特定のテスト条件またはテスト設計に変換します。  具体例: ・リスク分析レポート、インターフェース仕様などのテストベースのレビューなど ・優先度を指定してテストケースを設計する ・必要なテストデータを分類する   3、テスト実装とテスト実行 この段階では、テストケースやその他の必要な情報に基づいてスクリプトまたはテストの順番を作成し、環境を構築してテストを実行します。   4、成果とレポートの評価 テスト実装がテストの目的を満たしているかどうかの評価です。  具体例: ・テスト計画段階で指定されたテスト終了基準とテスト結果を比較する ・追加のテストが必要か、出力の基準を変更する必要があるかを判断します ・テストレポートを書く   C> テストの心理学   テスターと開発者はいつも、クライアントのニーズを満たす完璧なソリューションを作成する、という同じゴールを目指しています。しかし彼らの仕事と考え方は異なっています。開発者が適切な意見を持っている場合は、自分でテストできます。しかし、開発者とテスターの環境を分けた方がテストは効果的です。十分に訓練されたプロテスターによる、開発とは完全に独立した観点からのテストは、開発とテスターの双方向のフィードバックを得られるので、有益です。…