・ソフトウェアのテストは、主に4種類のレベルに分類できる・「単体テスト」は個々のプログラムが正常に動作するかテストし、「統合テスト」は複数のプログラムで構成された一つの機能が正常に動作するかテストする・「システムテスト」は全ての機能が正常に動作するかを様々な観点でチェックするテスト。「受け入れテスト」はソフトウェアが要求水準を満たしているかユーザー側で確認するテスト。【本題】テストのレベルについてソフトウェアのテストは、下記の4種類に分類することができます。・単体テスト・統合テスト・システムテスト・受け入れテスト今回は、これらのテストについてまとめます。単体テスト単体テストとは、一つのプログラム単体が正常に動作しているかをテストするものです。一つのプログラムとは、関数・メソッド・クラスなど、ひとまとまりで動作する最小単位を指します。これから紹介するテストの中では、最も細かいチェックを行えます。統合テスト統合テストとは、複数のプログラムを組み合わせた機能が正常に動作するのかテストするものです。先ほどの単体テストで、プログラム個々が正常に動作する事か確認できたとしても、それらを結合させた時にエラーが発生する場合があります。統合テストでは、そういったエラーを未然に防ぐことが出来ます。システムテストシステムテストとは、ソフトウェア全体が正常に動作するかを様々な観点でテストするものです。全ての機能を統合した時に起こる欠陥に焦点を合わせているので、実際の本番環境と同じ条件でテストを行います。正常に動作するのかという機能性の他にも、ユーザビリティ・セキュリティ・パフォーマンス・可用性など、様々な観点でソフトウェアの動作を検証します。受け入れテスト受け入れテストとは、ソフトウェアが要求水準を満たしているかユーザー側で確認するテストです。ソフトウェア開発の発注元が、ソフトウェアの納品前に実行します。実行する主体が違うだけで、テスト内容自体は、システムテストと遜色無い場合もあります。・今週はテストケース作成にかかりきりになっているが、作業の進め方がかなり効率が悪く時間が掛かり過ぎているように感じる。別プロジェクトを参考にアウトラインを作って、そこから細部の詰めているが、必要最小限のテストで済ますには、どこまでテストの粒度を細かくすべきか?どういったバグが混入することが想定されるか?などの判断が難しい。調べてみると、テストケース作成における体系的なノウハウはいくつかあったので、今回は間に合わないが、それらの知見を身につけて、次回以降の作業効率を高めて行きたい。日)IBMのWatsonきっかけでエンジニアに憧れて28歳未経験でWebエンジニアへ転職。2018年12月から3年間で「10000時間」をプログラミングに捧げる計画を立て、学んだことをブログの投稿中。Activitiesryoutakuこのサイトについてプライバシーポリシ。