テスターに​​作業を提出する前に、開発者は何をテストする必要がありますか?[閉まっている]


8

テスターに​​作業を渡す前に開発者がチェックしなければならないチェックリストはありますか?

また、開発者が注意しなければならない条件/ケースは何ですか?

回答:


5

テスターに​​作業を渡す前に開発者がチェックしなければならないチェックリストはありますか?

もちろんです。理想的には、このチェックリストは次の2つの項目で構成されています。

  • 継続的な統合サイクルが完了したことを確認します。
  • バグ/機能追跡システムにエントリを作成して、QAへの変更を行います。

実際のチェックリストは、継続的な統合戦略の背後に隠れています。このリストは集中管理され、完全に自動化されているため、QAチームに作業を提出する前に、個々の開発者がコードを壁に投げてQAに「忘れる」ことで重要なことをチェックすることはできません。あなたは、開発者が時間のプレッシャーの下でしばしば「忘れ物」になることを知っていますよね?

継続的インテグレーションシステムは、ビルドを実行し、すべての単体テストと統合テストを実行する必要があります。言うまでもなく、開発者は、新しい機能を開発してバグを修正する際に、継続的インテグレーションシステムで新しいユニットテストを利用できるようにする必要があります。

開発者は、QAに渡す前に継続的インテグレーションシステムから出てくるものに触れないでください。インストールしてすぐに試すことすらできません。ビルドがインストールされなかったとQAが言った場合は、継続的インテグレーションサイクルを修正して、インストールできない、または機能しないアーティファクトを吐き出さないようにする必要があります。

2番目のステップは快適なもの(バグの修正または機能の完了を示す)であるため、開発者がそれを忘れることはほとんどありません。


1
CIがない場合はどうなりますか?
dlp

3

場合によります。いくつかの哲学があります:

  • テスト駆動開発では、コーディングを始める前に、回帰/単体テストを作成することを求めています。
  • コーダーはコードのトリッキーな部分を知っており、それに応じてテストするかもしれません
  • 独立したテスターは、開発者が考えたことのないエラーを見つけるかもしれません。また、テスターは、ソフトウェアが実際に使用されている領域に精通している可能性があり、検証(「正しいものを構築していますか?」

したがって、各パートナーが行うテストのレベルは、プロジェクトと組織によって異なります。事前にこのレベルに同意することが重要です。もちろん、コードは少なくともコンパイルしてエラーをスローせずに実行する必要があります。


2

それはそれがするように設計されたものをしますか?不正な入力があった場合、適切な例外をスローしますか?使えますか?(これは、APIとUIに適用されます)。

あなたのコードは、あなたの知る限りでは、テスターに​​渡す前にバグがないようにする必要があります。独自のコードの品質に慣れるために必要なテストはすべて行う必要があります。


1

QAがあなたに返信しないようにすることができるすべてのことを上司に「この成果物は明らかにテストしなかった」とCCに伝えます。ユニット、インテグレーション、システム、および手動(つまりあなた)のテストを自由に利用できます。これらを実行しないと、QAの時間が無駄になるだけです。

私のために働いた1人のQA担当者が、開発者が成果物をテストしたことの「証明」を求めます。これは、xUnitの結果、スクリプトからの出力、または紙ベースのチェックリストです。これにより、開発者がビルドの出力を転送するだけで停止したと言えます。


0

テスターの観点から見ると、開発者の最大の間違いは、コンパイルできないコードを提供することです。


2
おそらく、コードが使用可能な実行可能ファイルにコンパイルされない場合、QA /テスターは言うまでもなく、誰もが見る準備ができていません。
joshin4colours 2012年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.