ハマログ

株式会社イーツー・インフォの社員ブログ

テストサイズの話

こんにちは。

koma です。

この間までずっと、アクセシビリティの意味は「利用者が機器・サービスを円滑に利用できること」と思っていましたが少し違いました。似た言葉と比較すると分かりやすかったです。

  • アクセシビリティ:若者から高齢者、障害を持つ人から持たない人まで、全ての人がサービスを等しく利用できること
  • ユーザビリティ:特定のユーザーグループを対象として、そのユーザーグループがサービスやシステムをどれだけ使いやすく感じるかを評価する指標
  • 機能性:ソフトウェアを指定された条件のもとで動作するとき、要求されている仕様を満たす能力のこと

それは兎も角。自動テストのテストケース数の記事を見つけました。それによると「ユニットテスト>インテグレーションテスト>E2E(end to end)」の比率になるのが望ましいとのこと。

ただ、各テストレベルの解釈が組織や対象によって曖昧なため、この考えは古いという意見も多いようです。ではどうするのかというと、ブレの少ない議論ができるテストサイズで考えようという話になります。

テストサイズは、Google 社内から広まり始めたテストの分類方法。これを基に「Small>Medium>Large」の比率になるようにテストケース数を設定するそうです。

  • Small:テスト実行が単一プロセス内で完結、決定性が高い、忠実性はやや低い、高速に並列動作可能、テスト失敗時の原因・箇所が明確
  • Medium:1つのマシンに閉じたテスト(技術によってDBやGUIを伴うテスト実行可能)やや非決定性あり。忠実性はSmallよりは高い。速度はそこまで速くない、並列実行に制約あり。
  • Large:決定性が低く不安定なテスト。忠実性はやや高い。GUIを経由した統合環境の操作、テスト対象と外部システムとの通信のテスト。実行速度は遅く、原因の特定が困難

※決定性⇒テストが毎回同じように安定して動く度合いのこと(依存性が低くパラメータが同じなら必ず結果が同じになること)

※忠実性⇒どれだけ本番と同じ状態の結果を得られるかということ

※※依存性⇒DB、メール、今日の日付、ファイル、ユーザー入力など、関数の外側の状態によって関数内の結果に影響を与える要因のこと。結果が固定されないためテストがやりずらい、とのこと。

知らない言葉はいつも突然降ってくる。

引用元は以下の通り。

テストピラミッドにそって自動テストのケースを考えてみよう

第5回テストピラミッド~自動テストの信頼性を中長期的に保つ最適なバランス~

ユーザビリティとは?アクセシビリティとの定義の違いや評価方法、改善のポイントまで解説

【学び】なぜテストコードを書くのか他

おしまい。

ここまで読んでいただきありがとうございました。

テストサイズ依存性忠実性決定性

  koma   2024年4月8日


関連記事

海老で鯛を釣る🎣

先日初めて釣りに行きました🎣 釣りは少し敷居が高いと思っていまし…

RDSパラメータ設定時のエラー対処

重たい処理のクエリを投げた際にタイムアウトエラーが発生し、RDSのタイムアウト時…

半導体を語ろう~素人から見たクロック数競争~

こんにちは。 4回目の投稿になります koma です。 今回はIntelとAMD…


← 前の投稿

次の投稿 →