単体テストに時間がかかるのもアレ

注意: この記事は1年以上前に掲載されたものです。情報が古い場合がありますのでお気を付け下さい。

アプリの開発ではしばしば単体テストを行う。最初のうちはその機能が正常に動くかどうかを判定するだけということもあり、テストもそれほど問題にならないが、増えていくにつれて時間がかかってしまう。

当方の場合は、Ruby on Railsを使ってプロジェクトを行なっているときに、RSpecを使ってテストを行なっている。基本的にはテスト用のデータを作成して、処理を行い、その結果が意図したものかどうかを判定している。

iOSアプリについては、多くの場合それが難しいこともあり、シミュレーターや実機でトライアンドエラーを行なって開発を行なっているが、単体で確認できるところは極力行うようにしている。

さて、テストケースの数にもよるが、増えれば増えるほど時間がかかるようになる。それが20〜30秒くらいであればまだ我慢できるが、分単位になっていくとそれも難しい。その時間が長引くにつれて、開発の生産性も落ちるリスクが高まる。

その場合、いかにしてテストの所要時間を短縮できるかということに尽きるが、手元のコードについていえば、今開発している部分のテストだけで充分であり、これについては誰もがしているであろう。

問題は、全テストケースを一通り走らせる場合だが、この場合は並列にテストを実行するということになるが、やり方や環境によっては逆効果になる可能性があり、あるいはスレッドの問題でテストが正常にできなくなってしまう可能性もあるため、慎重に組まなければならない。

テスト所要時間の長さはしばしば頭を悩ませられるが、うまく対処していきたい。

タイトルとURLをコピーしました