2016-01-27 82 views
1

不是一個單元測試,但儀表測試。我該如何運行一個安卓工具測試用例?

我的應用程序有多種口味,所以我跑:

./gradlew connectedClientDebugAndroidTest運行我的測試儀器(味的名字是客戶)。

但我要運行名爲MyActivityTestCase.java一個特定的儀器測試用例類。這可能嗎?如果它是什麼就是運行這個

+0

我不知道如何從命令行執行此操作。在Android Studio中,您可以右鍵單擊課程名稱,然後進入「運行」菜單。 –

+0

的[命令行參數到Android儀器測試的gradle使用(http://stackoverflow.com/questions/17797324/command-line-arguments-to-android-instrument-test-using-gradle) –

+0

也許HTTP可能重複: //mrhaki.blogspot.com/2013/05/gradle-goodness-running-single-test.html會有所幫助。 –

回答

0

所以我解決這個問題的方法是將我想要的單個TestCase放到的特定文件夾中。

  • 因此,在這個例子中,我的味道被命名爲客戶,所以我把,我想爲這個味道碰上app/src/androidTestClient/MyActivityTestCase.java
  • 單測試,然後運行./gradlew connectedClientDebugAndroidTest

不是一個解決方案如果你有一個特定的構建風格的多個測試用例,但對於我來說,情況並非如此,所以它的工作原理。

  • 我所有的其他測試都在我的味道叫其他,文件夾中: app/src/androidTestOther/。因此,要運行其他儀器測試,我只需運行命令./gradlew connectedOtherDebugAndroidTest
0

利用亞行外殼一般語法的命令:

adb shell am instrument -w <test_package_name>/<runner_class> 

哪裏是你的測試應用程序的Android包名,是Android測試運行器類的名稱您正在使用。

更多細節在:http://developer.android.com/tools/testing/testing_otheride.html

+1

當然,這是假定你已經編譯並安裝你的APK文件到設備。通過Gradle,只需一個命令即可完成所有這些。 –

1

隨着搖籃,您可以通過使用test.single系統屬性運行單個測試。您可以使用-D選項從命令行進行設置。例如

$ gradle -Dtest.single=MyActivityTestCase connectedClientDebugAndroidTest 

有關詳細信息,請參閱http://mrhaki.blogspot.com/2013/05/gradle-goodness-running-single-test.html

+0

這沒有奏效,它運行所有測試。它是否需要成爲'MyActivityTestCase'的完整包名? – Prem

+0

不,全包名運行所有測試以及 – Prem

+0

@Prem你看了我提供的鏈接? –

相關問題