QAサポートサービス:テスト自動化によるテスト精度の向上

更新日:2023/05/16

テスト自動化というワードを聞いたことはあるでしょうか?
ソフトウェアテスト/第三者検証の業界にいると度々耳にすることになるのですが、IMAGICA GEEQでもテスト自動化の取り組みを進めています。
今回はIMAGICA GEEQで開発したテスト自動化ツールについて説明しようと思います。

テスト自動化とは

前回のブログ「QAサポートサービス:デバッグサポートツールによる効率化」でもご紹介しましたが、ソフトウェアテスト/第三者検証という物はとても、とーてーも地道な作業です。無数にあるテスト項目を一つずつ確認していくのですから集中力が求められる作業でもあります。
とは言え人は万能の生き物ではありませんので、一万個あれば一つは見逃してしまうというヒューマンエラーはあるかもしれません。そこでテスト精度を高める為にテスト自動化の取り組みが進められています。

自動化やAIで人間を手助けしてくれるというとアイアンマンのトニー・スタークが生み出した人工知能「ジャービス(J.A.R.V.I.S)」や、攻殻機動隊のタチコマを思い浮かべる人もいるのではないでしょうか。(私はタチコマがいてくれたらどんなに癒されるかと・・・)
彼、彼女らがいてくれたら「ここの項目のテストやっといてー」で終わるからとてつもなく心強い。ですが、時代はまだそこまでには至っていません。

現在のテスト自動化は実施するための条件が存在していたり、自動化には向いていないケースもあります。それでもテスト自動化を取り組むのは正確性・時間の短縮などが行えるからです。
それでは次からはIMAGICA GEEQが開発したテストツールについてご紹介します。

テスト自動化ツール『tesjica(テスジカ)』とは

まず初めに紹介するツールは『tesjica(テスジカ)』になります。
現在β版とはなりますが、繰り返しの作業が求められる場合などは重宝するツールです。

画像認識の技術を用いてAndroidアプリの操作を自動で行うことが可能です。
しかもシナリオはエクセルのような表形式で指定ができますので誰でも自動操作を設定することが出来ます。(プログラムの組めない私でも対応可能!!!)
動画やスクリーンショットを撮影するアクションも備わっていますので、『tesjica(テスジカ)』の実施中は放置しておいて作業者は別の検証を行えば良いのです。

例えばガチャの検証で特定のキャラクターが実際に排出される確率を調べようと思ったら、何度も何度も同じ操作をする必要がありますが『tesjica(テスジカ)』があれば解決です。
必要なキャラクターが排出されるまで自動でガチャを実行し続け、さらには必要な画像を保存することも可能となっています。

その他にもデバッグ機能を使わずにレベル上げを行わないといけない場合(コマンド形式のゲームなど条件はありますが)、繰り返し作業を『tesjica(テスジカ)』でシナリオ設定をしてしまえばあとは放置でOKです。
(自動調理器でカレーを作っている間に、サラダやトンカツを作ることが可能と言えばニュアンスは伝わりますかね(笑))

文章の校正ツール『testlint(テストリント)』とは

次に紹介するツールは自動でテストを実施してくれるツールになります。
名前は『testlint(テストリント)』になります。

RPGやテキストアドベンチャーゲームではテキストが非常に重要な要素ですが、テキストチェックは欠かせない検証項目の一つです。誤字/脱字/ストーリーの矛盾/時代に合った表現/一人称の表記方法/商標権への配慮など気を付けるチェック項目が山盛りです。
そこで『testlint(テストリント)』が役に立つ訳です。
『testlint(テストリント)』の特徴としては、誤字/脱字などのテキストチェックに使うというよりは、

  • 漢字のルビのフォーマットが正しいかチェックしたい
  • キャラクター同士の名前の呼び方が正しいかチェックしたい

など、「あらかじめ決まった規則性のある観点」をチェックすることに特化しています。
活用例をいくつか挙げますと、

  • ら抜き言葉を検出する
  • 禁止ワードの確認
  • 「コンピューター」と「コンピュータ」などの表記ゆれの確認
  • 「三日月・オーガス」と「三日月オーガス」といった名詞の中点の抜けを確認
  • 全角英語や半角カナの検出

といった具合ですね。

突然ですが「Invisible Gorilla」という認知度に関する動画があるのをご存知でしょうか。(詳しく知りたい方は検索してくださいね)
「あることに集中している人は他のことを見落としがちである」という内容です。
テキストチェックでも言えることなのですが誤字/脱字がないかということに集中すると、ら抜き言葉など他の確認が漏れてしまうということがあり得るのです。
人の認知には限界がありますので、そこを『testlint(テストリント)』が補うことでテスト精度を上げていく狙いがあります。

まとめ

MAGICA GEEQのテスト自動化の取り組みについては以上となります。まだまだ発展途上ではありますが、人とテスト自動化ツールが上手く役割を分けることでテスト精度を高めることができます。
IMAGICA GEEQのQAサポート部では紹介してきた『debacon(デバコン)』や『tesjica(テスジカ)』、『testlint(テストリント)』といったテストのサポート/自動化ツールを開発することによってサービスの向上へと努めております。

QAサポート部では業務システムやWebサイト、ゲームのテスト検証を行っています。
常にユーザーとお客様のことを考えて作業に臨んでおりまして、様々な経験を積んで精進しております。
今後もさらなるサービス向上へと邁進していく所存ですので、ソフトウェアテスト・第三者検証でお悩みが御座いましたら、お気軽にお問合せよりお声がけください。

『tesjica(テスジカ)』、『testlint(テストリント)』に関してはこちらのページに紹介動画を載せていますので、ご興味がある方は是非ご視聴ください。