この記事は「ウィルゲート Advent Calendar 2024」の 20 日目の記事です。
こんにちは、ウィルゲート開発グループ コンテンツ開発ユニットのりさりさです。
新しく追加された機能や新規プロダクトに対して、不具合やデグレの粗探しが得意な私が選ぶ見逃しやすいケースをご紹介します。
はじめに
なんでこの記事を書こうと思ったのか。 皆さんテスト…お好きですか?私は好きです。 特に他のエンジニアが実装した機能を検証することが大好きです。
もちろん、自動テストやテストコードが実装・導入されている状態が望ましいですが デグレ確認などはまだ手動のテストがされている印象です。
前職ではエンジニアが記載したテストケースの管理を担当し、テストの網羅性や テストケースに記載のないデグレ確認のために関連機能を検証する役割を担っていました。
今回は、テストケースに記載が漏れやすいような項目をピックアップしていきます。
意外と見落としやすいテストケース
今回ご紹介するのは、準正常系*1 テストが中心となります。 社内システムや、BtoCのシステムなど、システムに関して明るくないユーザの場合、 「そんなことする!?」という事例は多く存在します。
そこにフォーカスをあてた症例を大きく3つご紹介します。
※1 準正常系とは・・・システムが異常と判断する境界線付近の動作テストを指します
① 入力値系
エラー後の値保持
入力をした後、保存ボタンを押したのにエラーメッセージが出て 入力値消えたんだけど!?なんてありませんか?
想定されているエラー(例:必須項目が未入力 や 文字数の上限を超えた 等)の制御に引っ掛かった後、値が保持されているのか。 再度保存ができるかまで検証をするようにしましょう。
入力値切り替えタイプ
チェックボックスで入力項目の切替があるタイプ。 ある特定の項目だけ表示されるパターンの場合、入力しチェックをつけて切り替えたら裏で切り替え前の値を保持されてるなんてパターン。
例
- 法人のチェックボックスの時「会社名」を入力
- 個人のチェックボックスで切り替え(内部的に「会社名」を保持している状態)
- 登録ボタンを押下する
- 発症
※弊社のコンテンツ作成プロダクト エディトル画面 より抜粋
これは保存処理に関わらず、検索などでもあり得るので確認が必要ですね。
② 検索系
AND OR 検索
検索カテゴリーによって内部的に AND検索 OR検索 で別れてる場合があります。 検証の時にしっかり把握しておくことが大切ですね。
- OR検索の時、未入力時の最大件数と全項目チェックした時の件数が違うパターン
- OR検索とAND検索をまぜて検索した時、考慮がされていないパターン など
検索はかなりのパターン数あるので要注意です。
全検索項目の入力
以前失敗経験がある事例のご紹介です。
詳細検索など、検索項目が数多に存在しているようなシステムは多いと思います。
例えば、都道府県のチェックボックスが47個あった場合、 すべてチェックをつけて他の項目にも値を入力して検索すると…?
リクエストパラメータの最大文字数を超えてしまいエラーになったケースがあります。
対応策事例 カンマ(,)区切りに変換をして対策
修正前: https://example.com/search/?prefectures=1&prefectures=2&prefectures=3&prefectures=4&prefectures[]=5…
③ ブラウザバック・複数タブ
検証の敵三銃士を呼んできました。
- ブラウザバック
- 複数タブ
- ダブルクリック
いずれの操作も、重複してデータが作成されると困る場合には検証必須となります。 請求データやユーザ登録など複数でできたら危険なものは要確認です。
重複チェックはバックエンド側でしておきましょうという話は大前提ですが、検証しましょうね。
おわりに
いかがでしたか?
テストを網羅しておけば安心安全! リリース障害を起こしてしまうかも…という恐怖から脱することができると思います!
ぜひ活用してみてください。
「ウィルゲート Advent Calendar 2024」、翌日は武田さんによる「 依存性の逆転と腐敗防止層を駆使して、ミニマムに変更に強くしてみる」です。 お楽しみに!!!