モバイルテスト用の呪文を生成してみた
こちらは「ソフトウェアテスト Advent Calendar 2022」の9日目の記事です。8日目は@mballさんの「Reactコンポーネントの単体テスト書いてて困っちゃった - Qiita」でした(定型文)
書きながら、これは小ネタだったとツッコミを入れているぱいんです。気にせず行ってみましょう。
ぱいん🍍 (@pineapplecandy) / Twitter
文字で起きてほしくないこと
文字の入力や表示に関して起きてほしくないことを思いつく限り、書き出してみました。
- フリーズ: 普通に困る
- クラッシュ: 普通に困る
- サーバダウン :困るどころではない
- 文字化け: いわゆる豆腐になったりして、情報が読み取れなくなる。
- 見切れる: 必要な情報が読み取れなくなる。特に、契約事項だったりするとクリティカルな問題になりうる。
- 読み上げられない: テキストリーダー、音声案内アプリなどで混乱する
- 操作不良: 書き込めなくなる、消せなくなる
文字による過去インシデント
ぱっと調べただけでこんな感じでした。大小含めるといくらでもあると思います。
- 特定の文字列でクラッシュ(PlayStation4)
- 特定文字によるクラッシュ(iPhone)
きっかけ
リナさんが「例の呪文」というブログ*1とgithub*2で呪文を公開されていました。
ウェブ系だとかなり助かっていたのですが、モバイルアプリのテストをするためには拡張したいなという気持ちになりました。
そんなこんなで作ってみた呪文
🥹Juegas◻︎髙﨑☺ϴϵ⅊葛葛󠄀か゚ÅÄ柿杮®鴎鷗𩸽🫣
↑はてなブログだと化ける文字があるので、下にスクショにしています。
↓↓↓↓↓↓
↑↑↑↑↑↑
呪文の解説
先に言い訳を書いておくと、文字種の全パタンを取り込むのが理想だと思いますが、(私が開発しているシステムが)そこまで文字の全網羅を目指しているシステムでもなく、また、長くなりすぎると確認に時間がかかるので、呪文は実用的な範囲+個人的に気になることに絞っています。また、言語も日本語+αとなっています。
Juegas◻︎ :PlayStationの不具合を引き起した呪文の引用。なお、□に見えている文字は、元から化けているのでバグではない。
髙﨑 :日本の姓でよくでてくる異体字の定番。リナさんの例の呪文から引用。
☺ϴϵ⅊ : Unicodeの文字たち
か゚ : JIS X 0213:2000の合成文字。個人的に好きだったので追加。
柿杮 :「かき」と「こけら」。フォントによっては同じ文字に見えるため。
®: 登録商標マーク。「™」(トレードマーク)と並んで結構使う
𩸽 : テスターが大好きな魚といえば「ほっけ」。JIS 第4水準
🫣 :Emoji14.0で追加された絵文字。先頭の文字と同じ。覗き見る顔。
最後に
日本語だけでも調べてみると、思ったより奥が深かったです。みんなも自分の用途に合った呪文を作ってみると良いと思います。作ったら教えてください!
参考
① 文字集合の包含関係とテストに使うべき文字
② 例の呪文 - テストする人。