すべてのプロダクト
Search
ドキュメントセンター

HTTPDNS:エラーインジェクションテスト

最終更新日:Mar 20, 2026

Android SDK 連携プロセス を完了すると、HTTPDNS の カスタム解決 機能を使用して、ビジネスドメイン名を無効な IP アドレスに解決し、連携が成功したことを検証できます。このトピックでは、具体的なテスト方法と手順について説明します。

検証原理

HTTPDNS は、HTTP または HTTPS プロトコルを使用して、解決リクエストを Alibaba Cloud DNS サーバーに直接送信します。これにより、システムのローカル DNS をバイパスし、ネットワーク環境によって引き起こされる解決の失敗を防ぎます。

エラーインジェクションテストは、HTTPDNS のカスタム解決機能に依存しています。対象のビジネスドメイン名の解決結果を無効な IP アドレスに設定することで、制御可能な解析エラーを手動で注入できます。エラー注入環境でネットワークリクエストを行う場合:

  • リクエストが成功した場合、アプリはローカル DNS を使用して解決を行い、正常な IP アドレスを返します。これは、HTTPDNS 連携が失敗したことを示します。

  • リクエストが失敗した場合、アプリは HTTPDNS によって返された無効な IP アドレスを使用しました。これは、HTTPDNS 連携が成功したことを示します。

テスト準備

  • テストデバイス:インターネットアクセスが可能な Android スマートフォンまたはエミュレーター。

  • アプリのステータス:EMAS HTTPDNS SDK が連携済み。

  • テストドメイン名:Alibaba Cloud HTTPDNS コンソールで設定され、正常に解決されるビジネスドメイン名。

テスト手順

ステップ 1: 通常のネットワーク検証

  1. テストデバイスを利用可能な Wi-Fi ネットワークに接続し、デフォルトの DNS 設定を維持します。

    image

  2. HTTPDNS を無効化した状態で、アプリを開き、ホームページの読み込みや API 呼び出しなど、ドメイン名にアクセスするネットワークリクエストをトリガーします。

  3. リクエストが正常に返されることを確認します。

説明

このステップはベースラインを確立し、アプリとサービス機能が通常のネットワーク環境で正常に機能することを確認します。

ステップ 2: エラーインジェクション (カスタム解決)

  1. EMAS コンソール にログインします。

  2. 左側のナビゲーションウィンドウで、[解決管理] > [カスタム解決] を選択します。

    image

  3. ルールベースのカスタム DNS 解決の設定 を参照して、カスタム DNS レコードを追加し、無効な IP アドレスに解決するように設定します。

    image

ステップ 3: エラー注入環境での検証

  1. テストデバイスで HTTPDNS を有効にし、アプリケーションを起動します。

  2. ステップ 1 と同じビジネスリクエスト (例: ホームページの読み込みや API 呼び出し) をトリガーします。

  3. リクエスト結果を確認します。

    リクエスト結果

    結論

    ネットワークリクエストが失敗しました

    HTTPDNS によってドメイン名解決が完了しました。無効な IP アドレスが返され、ネットワークリクエストが失敗しました。これは、HTTPDNS 連携が成功したことを示します。

    image

    ネットワークリクエストが成功しました

    • 最初のリクエストが成功した場合、キャッシュミスがローカル DNS へのフォールバックを引き起こした可能性があります。しばらく待ってから、リトライしてください。

    • 複数のリクエストが成功した場合、解決が依然としてローカル DNS に依存しており、HTTPDNS を使用しなかったことを意味します。正常な IP アドレスが返され、リクエストが完了しました。HTTPDNS 連携が失敗しました。

    image

    説明

    ドメイン名解決に同期非ブロッキングインターフェイスを使用する場合、setPreResolveHosts および setEnableExpiredIp を有効にすることを推奨します。これにより、ローカルキャッシュに使用可能な解決結果が含まれるようになり、キャッシュミスによるローカル DNS へのフォールバックを回避し、検証精度への影響を防ぐことができます。