From 1c36a82fe2a264f009adac3faeb7c6df6a8385aa Mon Sep 17 00:00:00 2001 From: youtaol Date: Tue, 4 Dec 2012 11:05:18 +0800 Subject: [PATCH] Add two parameters to EndToEndTestRunner to control the sensor test and stress test for these two test need long time to run. --- .../endtoendtest/EndToEndTestRunner.java | 36 +++++++++++++++---- .../others/SecondaryTestUtils.java | 4 ++- .../endtoendtest/others/SensorTest.java | 18 +++++----- .../endtoendtest/others/StressTest.java | 13 ++++--- 4 files changed, 51 insertions(+), 20 deletions(-) diff --git a/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/EndToEndTestRunner.java b/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/EndToEndTestRunner.java index 14bea0f43..6a8ca1989 100644 --- a/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/EndToEndTestRunner.java +++ b/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/EndToEndTestRunner.java @@ -15,6 +15,8 @@ */ package com.google.android.apps.mytracks.endtoendtest; +import com.google.android.apps.mytracks.endtoendtest.others.SecondaryTestUtils; + import android.os.Bundle; import android.test.InstrumentationTestRunner; import android.util.Log; @@ -31,13 +33,35 @@ public class EndToEndTestRunner extends InstrumentationTestRunner { */ @Override public void onCreate(Bundle arguments) { - try { - EndToEndTestUtils.emulatorPort = Integer.parseInt(arguments.getString("port")); - } catch (Exception e) { - Log.e(EndToEndTestUtils.LOG_TAG, "Unable to get port parameter, use default value." + EndToEndTestUtils.emulatorPort, e); + String portNumber = arguments.getString("port"); + if (portNumber != null) { + try { + EndToEndTestUtils.emulatorPort = Integer.parseInt(portNumber); + } catch (Exception e) { + Log.e(EndToEndTestUtils.LOG_TAG, "Unable to get port parameter, use default value." + + EndToEndTestUtils.emulatorPort, e); + } } - Log.d(EndToEndTestUtils.LOG_TAG, "Use port number when run test on emulator:" + EndToEndTestUtils.emulatorPort); - + + String isStressTest = arguments.getString("stress"); + if (isStressTest != null && isStressTest.equalsIgnoreCase("true")) { + SecondaryTestUtils.runStressTest = true; + } else { + SecondaryTestUtils.runStressTest = false; + } + + String isSensorTest = arguments.getString("sensor"); + if (isSensorTest != null && isSensorTest.equalsIgnoreCase("true")) { + SecondaryTestUtils.runSensorTest = true; + } else { + SecondaryTestUtils.runSensorTest = false; + } + + Log.d(EndToEndTestUtils.LOG_TAG, "Use port number when run test on emulator:" + + EndToEndTestUtils.emulatorPort); + Log.i(EndToEndTestUtils.LOG_TAG, "Run stress test:" + SecondaryTestUtils.runStressTest); + Log.i(EndToEndTestUtils.LOG_TAG, "Run sensor test:" + SecondaryTestUtils.runSensorTest); + super.onCreate(arguments); } diff --git a/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/others/SecondaryTestUtils.java b/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/others/SecondaryTestUtils.java index b8e2a1255..fba1f700e 100644 --- a/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/others/SecondaryTestUtils.java +++ b/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/others/SecondaryTestUtils.java @@ -6,7 +6,9 @@ public class SecondaryTestUtils { * Set to false as default. True to run the test. Default to false since this * test can take a long time. */ - protected static boolean runTest = true; + public static boolean runStressTest = false; + public static boolean runSensorTest = false; + protected static final String DISABLE_MESSAGE = "This test is disabled"; diff --git a/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/others/SensorTest.java b/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/others/SensorTest.java index d1f5efe8f..451124232 100644 --- a/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/others/SensorTest.java +++ b/MyTracksTest/src/com/google/android/apps/mytracks/endtoendtest/others/SensorTest.java @@ -40,13 +40,15 @@ public class SensorTest extends ActivityInstrumentationTestCase2