BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース GPT-3を活用したモバイルアプリテスト用のテキスト入力生成

GPT-3を活用したモバイルアプリテスト用のテキスト入力生成

中国科学院とモナッシュ大学の研究者グループは、事前にトレーニングされた大規模言語モデル (LLM) に基づくモバイル アプリのテスト用にテキスト入力を生成する新しいアプローチを発表した。QTypist と呼ばれるこのアプローチは、106個のAndroidアプリと自動テストツールで評価され、テストのパフォーマンスが大幅に向上することを示した。

モバイルアプリのテストを自動化する上で障害となるのは入力テキストの生成であり、これは人間のテスターにとって困難な作業である。地理的な位置や住所、健康状態など、さまざまな種類の入力が必要であること、また、連続した入力ページで、入力値の間に相互関係があり、検証上の制約が発生する場合などが挙げられる。さらに論文の著者の1人がTwitterで説明しているように、1つのアプリビューで入力された内容が、他のどのビューを表示するかを決定する、という制御も考慮しなければならない。

BERTGPT-3などの大規模言語モデル (LLM) は、エッセイを書き質問に答えソースコードを生成できることが示されている。QTypist はLLMの能力を活用してモバイルアプリの入力プロンプトを理解し、アプリのテキスト入力として使用可能なデータの生成を試みている。

テキスト入力とそれに対応するビュー階層ファイルを含む GUI ページが与えたら、まずテキスト入力のコンテキスト情報を抽出し、LLMのためのプロンプトを生成するための言語パターンを設計する。モバイル入力シナリオにおけるLLM の性能を向上するために、モデルチューニング用のプロンプトと回答を自動的に構築するプロンプトベースのデータ構築とチューニング方法を開発した。

最初のステップでは、QTypistはGUIテストツールを用いて、入力ウィジェットに関連するメタデータ、例えばユーザーヒント、近くに表示されるウィジェットのコンテキスト情報、アクティビティ名などのグローバルコンテキストを含む、GUIで与えられるコンテキスト情報を抽出した。

画像

プロンプト生成ステップでは、抽出された3つのカテゴリの情報に基づき、言語学者によって500個のサンプルアプリを元に定義されたパターンに基づいてプロンプトを構築した。

このプロセスでは、入力ウィジェット、ローカルコンテキスト、グローバルコンテキストにそれぞれ関連する14の言語パターンが生成される。入力ウィジェットのパターンは、ウィジェットに何を入力すべきかを明示的に指定するもので、パターンを設計するために名詞(widget[n])、動詞(widget[v])、前置詞(widget[prep])などのキーワードを使用する。

プロンプトのデータセットは最終的に GPT-3への入力として使用され、その出力は入力コンテンツとして使用される。このアプローチの有効性は、DroidBotHumanoidなどを含む多くの代替アプローチのベースラインと比較して評価され、生成された入力の人間による品質の評価も実施された。さらに研究者は、QTypist を自動テストツールと統合することにより、Google Play で利用可能な 106個のAndroid アプリに対して有用性を評価した。いずれの場合も、QTypist は既存のアプローチのパフォーマンスを向上させることができたと彼らは言う。

QTypist の背後にある研究者チームが行った最初の作業は有望だが、アプリが十分なコンテキスト情報を提供しない場合や、GUI テストを超えた場合に適用するには、さらなる工夫が必要であろう。

作者について

この記事に星をつける

おすすめ度
スタイル

BT