ユニットテストについて調べた結果 まとめ①
今日は、今まで気にはなっていた"ユニットテスト"について
軽く調べたり聞いたりしてみました。
「テストコードかけた方が良いんだろうな〜」と思いつつも、
手を伸ばしていないのが事実(๑•̀ㅂ•́)و✧キラリ
まずびっくりしたのが、聞いた話によると
アジャイル開発ではテストコードを書く工程が必須だという事。
「うちはアジャイルでやってます〜」って言ってても
テストコードを書いていないとそれは「アジャイルもどき」だそうです。
テストコードを書くメリット
・テストコードを見れば仕様が把握できる(さよなら設計書)
・ある一定の品質を担保できる
・テストコードありきで進めるのでコードがスッキリする(さよならスパゲティー)
・追加開発時などの影響範囲テストの工数削減
テストコードを書くことのデメリット
・+@の工数がかかる(工数取れるなら問題ナス)
・学習コストがかかる(工数取れるなら問題ナス)
・新しい情報が少ない(xcode...盛り上がっていないのよね)
やるときの注意点
・新規プロジェクト作成時のタイミングから導入すべき
・あくまで最小単位のテストにしか過ぎないため結合などは別途工数が必要
やった後の注意点
・OSのバージョンアップのタイミングでテストコードも対応させる必要がある
・穴があっては担保にならないのでテストコードを必ず書くというルールを徹底すべし
コメント
テストコードを書くときはスタブも作らなあかんみたいですね。
違いがわからないのは、なんかの記事で、
「ユニットテストにはアプリケーションテストとロジックテストの2種類ある」
と書かれていた。
明日はこれがどういうことなのかを調べるのと、
本当にアジャイル開発ではユニットテストが必須なのかどうかを調べてみる予定です。
<参考になったもの>
<参考にならなかったもの>
https://developer.apple.com/jp/documentation/UnitTesting.pdf
<一回読んだだけでは理解できなかったもの>