国際化テスト:AIエージェントによる多言語アプリケーションの検証方法

Yunhao Jiao
国際化テスト:AIエージェントによる多言語アプリケーションの検証方法 カバー

国際化(i18n)テストは面倒でエラーが起きやすく、常に後回しにされます。ほとんどのチームは英語でアプリをテストし、翻訳は機能していると思い込んでいます。実際にはそうではありません。

バグは予測可能です。ドイツ語のテキストが切れる(英語より文字列が長くなる)、アラビア語やヘブライ語などのRTL言語でレイアウトが崩れる、アメリカとヨーロッパのユーザーを混乱させる日付フォーマット、正しくレンダリングされない通貨記号、エンドユーザーに生のローカライズキーを表示する未翻訳文字列などです。

AIが生成するコードは、AIコーディングツールが通常i18nを後付けとして英語優先の実装を生成するため、国際化バグをより多く引き起こします。ハードコードされた文字列、ロケールを考慮しない日付フォーマット、固定幅のUIレイアウトはAIの標準的な出力です。

AIテストエージェントがi18nに対してチェックする項目

TestSpriteのテストエンジンは、複数の観点から国際化を検証します。

文字列の完全性。ユーザーに表示されるすべての文字列について、エージェントはサポートされているすべてのロケールで翻訳が存在することを確認します。生のキー(「Einloggen」の代わりに「login.button.submit」)を表示してしまう未翻訳はデプロイ前に検出されます。

レイアウトの整合性。エージェントはさまざまなロケールでUIテストを実行し、長い文字列がレイアウトを崩さないことを確認します。ドイツ語の文字列は英語の同等表現より通常30%長くなります。日本語と中国語は異なる改行ルールを持ちます。エージェントはUIが正しく適応することを確認します。

日付、時刻、数値のフォーマット。エージェントは各ロケールで日付が正しい形式(MM/DD/YYYY vs. DD.MM.YYYY)で表示されること、数値の区切り文字が正しいこと(1,000.00 vs. 1.000,00)、通貨記号が正しい位置に表示されることを確認します。

RTLレイアウトのサポート。アラビア語、ヘブライ語、またはその他のRTL言語をサポートするアプリケーションに対して、エージェントはレイアウトが正しくミラーリングされること、テキストの配置が適切であること、双方向テキスト(LTR/RTLが混在するコンテンツ)が正しくレンダリングされることを確認します。

これらはすべてすべてのPRで自動的に実行されます。開発者が新機能を追加すると、i18nテストはマージ前にサポートされているすべてのロケールで動作することを確認します。

AIコーディングツールを使って国際向けにリリースするチームにとって、これはプロフェッショナルな製品と、英語以外のユーザーを二級市民として扱う製品との違いです。

TestSpriteを無料で試す →