2011-08-15 5 views
0

現在、Android 2.1-2.3.3とAndroid 3.1(ハニカム)で動作するアプリを作成しています。自動テストは、電話機とタブレットエミュレータの両方で実行されています。アンドロイド携帯電話とタブレットのテストをどのように管理しますか

電話機とタブレットのどちらのテストを管理するのは難しいです。

現在、我々のテストのいくつかは次のようになります。

public void testSomething() { 

    public void testSomething() { 
     if(isTablet){ 
     //run tablet test 
     } else { 
     //run phone test 
    } 
} 

は、テストが実行にどのようなデバイスを管理するためのより良い方法はありますか?タブレットのアプリ画面の一部は電話と異なり、if文が必要です。他のページは同じ画面を共有し、専用のテストは必要ありません。テストラン(タブレットまたは電話)から特定のテストクラスを除外する方法はありますか?

何か助けていただければ幸いです。

ありがとうございます!

答えて

0

私はあなたがタブレットかどうかを確認してはいけないと思うが、画面サイズとSDKのバージョンに基づいてアプリを考えていると思う。

This reading maybe interesting to you.

+0

私は彼が 'isTablet'を評価する方法を尋ねているとは思わない。彼は、アンドロイドのテストケースとタブレットのテストケースを管理するためのより良いワークフローがあるかどうかを尋ねています。 –

+0

は、タブレットでテストケースを管理し、タブレットでテストケースを管理することを意味します。 –

0

あなたのアプリがタブレットと定期的なAndroidの両方をサポートしている場合は、Android Multiple APK Supportを活用しない理由を次のようにします。

複数のAPKのサポートにより、あなたが今、単一のためのAPKの複数のバージョンをアップロードすることができますそれぞれの顧客が異なる顧客のサブセットに対応しています。これらのAPKは、完全な独立したAPKで、同じパッケージ名を共有しますが、異なるAndroidプラットフォームのバージョン、画面サイズ、またはGLテクスチャ圧縮フォーマットをターゲットとするコードとリソースが含まれています。

このようにして、アプリケーションごとに2つの異なるテストプロジェクトを作成できます。

+0

これについても考えましたが、アプリとテストコードの両方で多くのコードの重複が発生します。私はコードの60%が共有されていると推測します。 – fhoang

+0

IMHO 40%の非共有コードは、分離を正当化するのに十分です。適切なバージョン管理は、両方のプロジェクトの機能更新を管理するのに役立ちます。 –

関連する問題