HockeyAppシステムでのAdobe AIRアプリケーションのテスト

友人の皆さん、ご挨拶!



についての記事は何ですか



この記事では、 HockeyAppモバイルアプリテストシステムの表面的な説明を行います。 ActionScriptでのコードの記述からHockeyAppシステムでのログの取得までの方法を説明します。 FPHockeyApp ANEライブラリを紹介します。 アプリケーションテストシステムに精通している場合は、FPHockeyAppライブラリの使用例にすぐにジャンプできます。



問題の本質



モバイルアプリケーションを単独で開発している場合は、開発したアプリケーションの新しいバージョンをダウンロードしてさらにテストするために、さまざまなデバイスをコンピューターに常時接続する必要があることに不快感を感じるでしょう。 大規模なチームで作業している場合、テストアセンブリをテスターに​​手動で配布するプロセスは、地獄に変わります... HockeyAppのような自動アプリケーションテストシステムは、この問題を解決するように設計されています。 それがどのように機能するか、読み進めてください。







hockeyappはどのように



HockeyAppシステムのすべての機能の詳細な説明は、 http: //hockeyapp.net/にあります。 要するに、これは次のように機能します。 hockeyapp.netで開発者として登録し、アプリケーションを作成します。 アプリケーションを作成すると、一意の識別子APP_IDが取得されます。

画像



また、すべてのテスターはサイトに登録されており、開発者として、あなたはテスターに​​アプリケーションの新しいバージョンを受け取る権利を与えています。 結果のAPP_IDは、HockeyApp SDK初期化メソッドで適用する必要があります。 組み立てられた.ipa / .apkファイルはhockeyapp.netにアップロードされます





また、アプリケーションテストのすべての参加者は、新しいテストアセンブリに関する通知をメールで受け取ります。 同じ手紙で、テスターはアプリケーションを自動的に更新するリンクを受け取ります。 アプリケーションの新しいバージョンは、テスターのデバイスにすぐにインストールされます(iTunesなどでダンスする必要はありません)。 モバイルメールの画面を次に示します。





何らかの理由でテスターのアプリケーションがクラッシュした場合、アプリケーションはHockeyApp Webサイトでさらに分析するためにログをサイトに送信できます。





オペレーティングシステムの標準ログに加えて、独自のログをサーバーに送信して、バグを見つけやすくすることができます。サイトの[データ-説明]セクションでログを確認できます。





示されているすべてに加えて、システムにはさらに多くのグッズとアメニティがあります。試してみてください。



HockeyApp SDKの初期化



Hockeyapp.netには、SDKを使用するための詳細な手順があります。 数行のコードを埋め込む必要があります。iOSでの初期化の例を次に示します。



[[BITHockeyManager sharedHockeyManager] configureWithIdentifier:@"APP_ID"]; [[BITHockeyManager sharedHockeyManager] startManager]; [[BITHockeyManager sharedHockeyManager].authenticator authenticateInstallation];
      
      







SDKを使用して最小限の作業を行うにはこれで十分です。



FPHockeyApp.aneを使用したAIRアプリケーションでの初期化



AIRアプリケーションでHockeyAppを使用するには、FPHockeyApp ANE ライブラリを接続し、次のコードを追加する必要があります。



 import ru.fp.hockeyapp.FPHockeyApp; import ru.fp.hockeyapp.constants.BITAuthenticatorIdentificationType; // FPHockeyApp.instance.configureWithIdentifier('APP_ID'); FPHockeyApp.instance.startManager(); FPHockeyApp.instance.authenticateInstallation();
      
      







クラッシュが発生した場合にアプリケーションがサーバーにログを送信するには、次のコードを追加します。

 import ru.fp.hockeyapp.FPHockeyApp; import ru.fp.hockeyapp.logger.FPhaLogger; // var logger:FPhaLogger = FPhaLogger.createInStorageDir('TestLog', 'loggs/myLog1.txt'); logger.add('my log record'); // FPHockeyApp.instance.init(); FPHockeyApp.instance.setLogFilePath(logger.nativePath); // FPHockeyApp.instance.configureWithIdentifier('YOU_APP_ID'); FPHockeyApp.instance.startManager(); FPHockeyApp.instance.authenticateInstallation();
      
      







FPhaLoggerクラスは、ログが保存されているデバイスのファイルシステムにファイルを作成します。 便利な他のロガーを使用できます。FPHockeyApp.instance.setLogFilePath()メソッドでログが存在するファイルへの絶対パスを渡すことのみが重要です。



デフォルトでは、アプリケーションがログを送信するとき、ログの送信者に関する情報はサーバーに送信されません。 テスターのうち誰がいつアプリケーションを起動し、誰がアプリケーションをドロップしたかを知りたい場合は、ユーザーを認証する必要があります。 これは、setIdentificationType()メソッドを使用して行われます。

 import ru.flashpress.hockeyapp.FPHockeyApp; import ru.flashpress.hockeyapp.constants.BITAuthenticatorIdentificationType; // FPHockeyApp.instance.configureWithIdentifier('APP_ID'); FPHockeyApp.instance.setIdentificationType(BITAuthenticatorIdentificationType.HOCKEY_APP_USER); FPHockeyApp.instance.startManager(); FPHockeyApp.instance.authenticateInstallation();
      
      







ユーザーを認証するにはいくつかの方法があります。





すべての種類の認証の詳細な説明については、 HockeyAppのドキュメントを参照してください。



残念ながら、承認タイプBITAuthenticatorIdentificationType.DEVICEおよびBITAuthenticatorIdentificationType.WEB_AUTHはFPHockeyApp.aneライブラリではサポートされていません。これは、ANEライブラリの作成における特定の技術的な問題によるものです。 この問題を克服できれば、どうやってそれをやったのかを確実に教えて、新しいバージョンのライブラリを送り出します。 それまでの間、コンパイルの成功とバグの迅速な検索:)



軟膏と類似体で飛ぶ



最大の、そして私の意見では、このシステムの唯一のマイナスは料金です。 最小料金は月額10ドルで、アプリケーションは5つまでです。 30日間の試用期間があり、その間、このシステムのすべての長所/短所を評価する時間があります。 正直に言って、まだアナログを試す時間はありませんでしたが、おそらくTestFlightであることが有名で、無料で、ネットワーク上のどこかでこのサービスを使用するANEライブラリを見てきました。 誰かがAIRアプリケーションでアナログを使用した場合は、経験を共有してください。



UPD:ライブラリのバージョンを更新しました。 クラスでは、FPhaLoggerがログで最大ファイルサイズを指定する機能を追加しました。これにより、開発者が誤ってすべての空きメモリをログで詰まらせないようにします。 すべてに良い!



UPD2: svnリポジトリfpsvn.ru/svn/ane/hockeyapp/opensourceのソース



All Articles