「FindingBugs」やってみた

この記事は [カオナビ Advent Calendar 2021] 16日目です。

自己紹介

はじめまして。horikiと申します。
2019年にQAエンジニアとしてカオナビに入社しました。現在はオペレーショングループでQCを行っています。

FindingBugs」とは

「テスターちゃん」の作者であるまつさんが公開しているテスト練習用のWebページです。
TwitterやFacebookに近いWebAppで、フォローした人の投稿を見たり自分で短文を投稿できます。
「FindingBugs」にはいくつかのバグが意図的に組み込まれており
探索的テストの練習やバグチケットの起票の練習などに活用できます。
今回は「バグ発見モード」にて全15件のバグを探すことを目標とします!
「自分が普段どういう考え方でバグを見つけているか」を可視化したいので、
バグ発見の流れと最初に考えたテスト観点も記載します。

※ここからは「FindingBugs」の多大なネタバレを含みますのでご注意ください!※



結果

実際に各機能を軽く触って仕様把握とテスト観点書き出し→バグ探しの流れで、

1時間弱で目標の15件のバグ+隠しバグ1件を発見しました。

思ったより時間がかかりました。

狙った通りにバグを出せたものもありますが、1部はラッキーでバグを検知しました。


実際に触って仕様を確認する

「FindingBugs」には仕様書が無いので、まずは軽く触って仕様を把握します。

各仕様につけた「→」は仕様把握の時点で思いついたテスト観点をメモ書きしたものです。


<仕様>

■自分の投稿

・テキストボックスに入力して「投稿」ボタンで投稿できる(最大140文字)

 →各文字種(改行含)や文字数

 →投稿の削除(自分の投稿は削除できるが他人の投稿は削除できないこと)


・写真や動画を投稿できる

 →様々な拡張子のファイルを添付できるか

 →重いサイズでも添付できるか


・投稿日時が表示される

 →実際に投稿した日時が表示されるか(本当はうるう年とかやったほうがいい)


・投稿用のテキストボックスを伸ばしたり縮めたりできる


■他人の投稿

・相手の投稿に返信ができる

 →各文字種(改行含)や文字数(返信時の最大文字数は不明)

 →投稿の削除(自分の投稿は削除できるが他人の投稿は削除できないこと)


・相手の投稿にいいねができる(解除は出来ない模様)

 →何回もいいねできないか


■ユーザーのフォロー

・画面下部におすすめユーザーとしてランダムに3名のユーザーが出てくる

 →ダブルクリック等で同じユーザーをフォロー出来ないか


・右上のヘッダーメニューからフォロー対象一覧を確認できる

 →フォロー解除できるか


■ユーザー情報

・右上のヘッダーメニューから自分のユーザー名を変えられる(最大20文字)

 →各文字種や文字数

 →変更後にヘッダーのユーザー名が変わるか

 →変更後に投稿済のユーザー名が変わるか

 →変更後のユーザー名で投稿できるか


バグを探す

だいたい仕様が分かってきたので、先ほど考えた観点をもとにバグを探します。

仕様把握のために軽く触った段階で以下のバグを発見しました。

リストのバグは狙っておらず、リストやメニューは出したらしまうのが習慣になっているのでその過程で発見しました。

【実績解除】

・リストで出したコメント欄を消せない

・リストで出した削除ボタンを消せない

・画像がアップロードできない


■自分の投稿

最大文字数(140文字)をオーバーして投稿しようとしたら、先ほど試しに投稿した内容がテキストボックスから消えてませんでした。

これも狙っておらずたまたま発見しました。

【実績解除】

・投稿で、投稿した後に文字が消えない


141文字で投稿を試すと投稿できちゃいました。

【実績解除】

・投稿で文字数オーバーなのに投稿可能


逆に何も文字を入力せず投稿すると、エラーにならず投稿可能でした。

投稿削除を試してみたところ、削除できました。

テキストボックスの伸び縮みは特に問題なさそうです。


投稿日時を確認すると1か月前になっていました。

【実績解除】

・リストで月が1ヶ月前表示

※どうやらアイコンをクリックすると実績解除になる模様。

 私はひたすら日付をクリックしまくって「実績が解除されない……!」と焦ってましたw


文字種の確認は時間がかかるので一通り各機能を確認した後にやります。


■他人の投稿

まずは121文字で返信してみたところ、返信できました。

最大文字数は特に決められていないのかも。

返信は投稿と違って削除できない模様。

同じユーザーに複数回返信できるのか気になったのでやってみると、

1回目のコメントが2回目のコメントで上書きされるバグを見つけました。

【実績解除】

・2個目のコメントを書き込むことができない


他人の投稿の「削除」ボタンを押してみると削除されました。

【実績解除】

・リストで人の記事を削除できる


他人の投稿へ「良いね!」を2回押すと「良いね!は1記事につき1回までです。」とエラーが出ましたが「良いね!」の数は増えました。

もう一度押しても同じ挙動で、何度も「良いね!」ができるようです。

【実績解除】

・リストで何度も「良いね!」ができる


■ユーザーのフォロー

1度フォローしたユーザーをもう一度フォローするとフォローできるバグを発見。

【実績解除】

・おすすめで同じフォロワーをフォローできる


おすすめのユーザーはランダムで3人表示されるのですが

何度か更新していると3人中2人が同じユーザーになる現象が発生

ただ、これは狙ったものではなく偶然発見したものです。

【実績解除】

・おすすめで同じ人が表示される


試しにフォロー解除もやります。

問題なく解除出来ましたが「フォロー解除しますか?」みたいな選択肢が出ていたので

今度は「キャンセル」を選択した際の挙動を試してみます。

キャンセルでもフォロー解除されちゃいました。

【実績解除】

・プロフィールでフォロー解除をキャンセルしてもフォロー解除される


■ユーザー情報

21文字で登録してみたところ登録でき、更に変更しても右上のユーザー名が変わりませんでした。

【実績解除】

・プロフィールで文字数オーバーでも名前を変更できる

・プロフィールで名前を変更してもヘッダの名前が変更されていない


なお、ユーザー名を0文字で保存するとそれ以降ユーザー名変更のテキストボックスが表示されないバグがあるのですが、これは実績解除になりませんでした。

ユーザー名変更後に投稿してみると、変更後のユーザー名で投稿できました。

既に投稿済みのものは以前の名前のままになる仕様のようです。


この時点で実績を14/15解除!

ただ手詰まり感があるので後回しにしていた文字種の確認に行きます。


htmlタグが反映されるバグを発見。Webあるあるです。

【実績解除】

・HTMLタグが反映されているッ!


なんとこれは隠し実績のようです!

隠し実績はもう1つありますが、あくまで隠し以外の15件を見つけることをゴールにします。


文字種の確認の途中、カウンター周りのバグも発見。

全く意図せず出してしまいました。これが最後のバグでした。

【実績解除】

・投稿で入力をしないとカウンターが現れない


実績を15/15解除できました!ミッションコンプリートです!


まとめ

ほぼ狙った通りにバグを出せましたが、いくつか意図せずにバグを発見するあたりが結構リアルだなと思いました。QAあるあるですよね。

隠し実績がもう1つあるので空いた時間に少しずつ触って実績解除します。

普段、自分がどういう考え方でバグを見つけているのかが分かるのでやっていて面白かったです。

QA以外の方もゲーム感覚で楽しめると思うので、もし良ければやってみてください!


コメント

このブログの人気の投稿

これからソフトウェアテストについて勉強する人にお勧めな本3選