「単体テスト」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
 
4行目: 4行目:
 
単体テストは[[プログラミング]]において[[クラス]]や[[関数]]などのごく小さな単位(ユニット)で、その動作に誤りがないか行うテストのことである。これは各種[[プログラミング言語]]でよく行われるプリント分を挿入して[[デバッグ]]するという原始的な行為も含まれる。もう少し大きい視点では[[契約プログラミング]]と[[静的解析ツール]]の組み合わせに近い概念を、もう少し踏み込んで動的にテストしたい場合などに用いられる。またそもそも[[契約プログラミング]]を利用できない[[プログラミング言語]]や環境で似たようなことを行いたい場合にも用いられる。
 
単体テストは[[プログラミング]]において[[クラス]]や[[関数]]などのごく小さな単位(ユニット)で、その動作に誤りがないか行うテストのことである。これは各種[[プログラミング言語]]でよく行われるプリント分を挿入して[[デバッグ]]するという原始的な行為も含まれる。もう少し大きい視点では[[契約プログラミング]]と[[静的解析ツール]]の組み合わせに近い概念を、もう少し踏み込んで動的にテストしたい場合などに用いられる。またそもそも[[契約プログラミング]]を利用できない[[プログラミング言語]]や環境で似たようなことを行いたい場合にも用いられる。
  
今日日では[[xUnit]]といった[[テスト自動化ツール]]を用いて行われるのが主流となっており、「単体テスト」という言葉自体が「テスト自動化ツール」を指していることも多い。文脈から読み取る必要がある。本来の意味とは異なるがそんな細かいことを指摘しても無駄である。
+
今日日では[[xUnit]]といった[[テスト自動化ツール]]を用いて行われるのが主流となっており、「単体テスト」という言葉自体が「テスト自動化ツール」を使うことを指していることも多い。文脈から読み取る必要がある。本来の意味とは異なるがそんな細かいことを指摘しても無駄である。
  
 
昔ながら[[IT土方]]では[[エクセル]]で作った項目表を手作業で潰していくという手法をとっているところもある。これらはあらかじめ「変数◯◯の最小値」などのテンプレートになっており、それを元に実際の[[ソースコード]]に適合するように書き換えて使用するのが定番となっている。
 
昔ながら[[IT土方]]では[[エクセル]]で作った項目表を手作業で潰していくという手法をとっているところもある。これらはあらかじめ「変数◯◯の最小値」などのテンプレートになっており、それを元に実際の[[ソースコード]]に適合するように書き換えて使用するのが定番となっている。
  
また[[テスト自動化ツール]]の多くは[[GUI]]のテストには不向きであるため、GUI周りの単体テストについては前述にあるような手作業で行っていることも多い。[[GUI]]で単体テストを行い易くする[[MVVM]]なる手法も考案されてはいるが、[[MVVM]]では[[ソースコード]]が肥大化するという理由で敬遠されていることが多い。
+
また[[テスト自動化ツール]]の多くは[[GUI]]のテストには不向きであるため、GUI周りの単体テストについては前述にあるような手作業で行っていることも多い。[[GUI]]で単体テストを行い易くする[[MVVM]]なる手法も考案されてはいるが、[[MVVM]]では[[ソースコード]]が肥大化するという理由で敬遠されていることが多い。前述の[[エクセル]]で作った項目表を手作業で潰していくという手法では[[スクリーンショット]]を乗せることでGUIの動作確認とすることが多い。
  
 
==関連項目==
 
==関連項目==

2015年8月20日 (木) 01:02時点における最新版

単体テスト英語:unit testing)とは、プログラミングにおいてクラス関数などのごく小さな単位(ユニット)で、その動作に誤りがないか行うテストのことである。

概要[編集 | ソースを編集]

単体テストはプログラミングにおいてクラス関数などのごく小さな単位(ユニット)で、その動作に誤りがないか行うテストのことである。これは各種プログラミング言語でよく行われるプリント分を挿入してデバッグするという原始的な行為も含まれる。もう少し大きい視点では契約プログラミング静的解析ツールの組み合わせに近い概念を、もう少し踏み込んで動的にテストしたい場合などに用いられる。またそもそも契約プログラミングを利用できないプログラミング言語や環境で似たようなことを行いたい場合にも用いられる。

今日日ではxUnitといったテスト自動化ツールを用いて行われるのが主流となっており、「単体テスト」という言葉自体が「テスト自動化ツール」を使うことを指していることも多い。文脈から読み取る必要がある。本来の意味とは異なるがそんな細かいことを指摘しても無駄である。

昔ながらIT土方ではエクセルで作った項目表を手作業で潰していくという手法をとっているところもある。これらはあらかじめ「変数◯◯の最小値」などのテンプレートになっており、それを元に実際のソースコードに適合するように書き換えて使用するのが定番となっている。

またテスト自動化ツールの多くはGUIのテストには不向きであるため、GUI周りの単体テストについては前述にあるような手作業で行っていることも多い。GUIで単体テストを行い易くするMVVMなる手法も考案されてはいるが、MVVMではソースコードが肥大化するという理由で敬遠されていることが多い。前述のエクセルで作った項目表を手作業で潰していくという手法ではスクリーンショットを乗せることでGUIの動作確認とすることが多い。

関連項目[編集 | ソースを編集]

参考文献[編集 | ソースを編集]