テストサイズの話
こんにちは。
koma です。
この間までずっと、アクセシビリティの意味は「利用者が機器・サービスを円滑に利用できること」と思っていましたが少し違いました。似た言葉と比較すると分かりやすかったです。
- アクセシビリティ:若者から高齢者、障害を持つ人から持たない人まで、全ての人がサービスを等しく利用できること
- ユーザビリティ:特定のユーザーグループを対象として、そのユーザーグループがサービスやシステムをどれだけ使いやすく感じるかを評価する指標
- 機能性:ソフトウェアを指定された条件のもとで動作するとき、要求されている仕様を満たす能力のこと
それは兎も角。自動テストのテストケース数の記事を見つけました。それによると「ユニットテスト>インテグレーションテスト>E2E(end to end)」の比率になるのが望ましいとのこと。
ただ、各テストレベルの解釈が組織や対象によって曖昧なため、この考えは古いという意見も多いようです。ではどうするのかというと、ブレの少ない議論ができるテストサイズで考えようという話になります。
テストサイズは、Google 社内から広まり始めたテストの分類方法。これを基に「Small>Medium>Large」の比率になるようにテストケース数を設定するそうです。
- Small:テスト実行が単一プロセス内で完結、決定性が高い、忠実性はやや低い、高速に並列動作可能、テスト失敗時の原因・箇所が明確
- Medium:1つのマシンに閉じたテスト(技術によってDBやGUIを伴うテスト実行可能)やや非決定性あり。忠実性はSmallよりは高い。速度はそこまで速くない、並列実行に制約あり。
- Large:決定性が低く不安定なテスト。忠実性はやや高い。GUIを経由した統合環境の操作、テスト対象と外部システムとの通信のテスト。実行速度は遅く、原因の特定が困難
※決定性⇒テストが毎回同じように安定して動く度合いのこと(依存性が低くパラメータが同じなら必ず結果が同じになること)
※忠実性⇒どれだけ本番と同じ状態の結果を得られるかということ
※※依存性⇒DB、メール、今日の日付、ファイル、ユーザー入力など、関数の外側の状態によって関数内の結果に影響を与える要因のこと。結果が固定されないためテストがやりずらい、とのこと。
知らない言葉はいつも突然降ってくる。
引用元は以下の通り。
第5回テストピラミッド~自動テストの信頼性を中長期的に保つ最適なバランス~
ユーザビリティとは?アクセシビリティとの定義の違いや評価方法、改善のポイントまで解説
おしまい。
ここまで読んでいただきありがとうございました。