public void testRun() { // Wait for activity: 'com.fitbit.onboarding.landing.LandingActivity_' solo.waitForActivity("LandingActivity_", 500); // Wait for activity: 'com.fitbit.home.ui.HomeActivity_' assertTrue("HomeActivity_ is not found!", solo.waitForActivity("HomeActivity_")); solo.sleep(500); solo.clickOnView(solo.getView("tile_content", 1)); // Wait for activity: 'com.fitbit.runtrack.ui.ExerciseListActivity' assertTrue("ExerciseListActivity is not found!", solo.waitForActivity("ExerciseListActivity")); // sleep for x seconds solo.sleep(500); // Click on Empty Text View solo.clickOnView(solo.getView("new_exercise")); // Wait for activity: 'com.fitbit.runtrack.ui.RecordExerciseActivity' assertTrue( "RecordExerciseActivity is not found!", solo.waitForActivity("RecordExerciseActivity")); // sleep for x seconds solo.sleep(500); solo.clickOnText(java.util.regex.Pattern.quote("Log Previous")); solo.enterText(0, "yoga"); solo.clickOnText(java.util.regex.Pattern.quote("Yoga")); solo.clickOnText(java.util.regex.Pattern.quote("30:00")); solo.setTimePicker(0, 23, 59); solo.clickOnView(solo.getView(android.R.id.button1)); solo.clickOnView(solo.getView("confirm")); solo.clickOnView(solo.getView(android.R.id.button1)); }
public void testRun() { // Wait for activity: 'com.fitbit.onboarding.landing.LandingActivity_' solo.waitForActivity("LandingActivity_", 500); // Wait for activity: 'com.fitbit.home.ui.HomeActivity_' assertTrue("HomeActivity_ is not found!", solo.waitForActivity("HomeActivity_")); solo.sleep(500); solo.clickOnView(solo.getView("tile_content", 1)); // Wait for activity: 'com.fitbit.runtrack.ui.ExerciseListActivity' assertTrue("ExerciseListActivity is not found!", solo.waitForActivity("ExerciseListActivity")); // sleep for x seconds solo.sleep(500); // Click on Empty Text View solo.clickOnView(solo.getView("new_exercise")); // Wait for activity: 'com.fitbit.runtrack.ui.RecordExerciseActivity' assertTrue( "RecordExerciseActivity is not found!", solo.waitForActivity("RecordExerciseActivity")); // sleep for x seconds solo.sleep(500); solo.goBack(); solo.scrollToSide(Solo.LEFT); solo.clickOnView(solo.getView("track_type")); // Click on Walk solo.clickOnView(solo.getView(android.R.id.text1, 1)); solo.sleep(500); }
/** US 01.03.01 Test that an object is displayed in account. */ public void testDisplayStatus() { solo.clickOnView(solo.getView(R.id.LoginButton)); solo.enterText((EditText) solo.getView(R.id.emailAddress), "123@123"); solo.clickOnView(solo.getView(R.id.email_sign_in_button)); solo.clickOnView(solo.getView(R.id.AccountBtn)); solo.clickInList(0); solo.assertCurrentActivity("should be editing stalls", EditStall.class); solo.goBack(); solo.goBack(); solo.clickOnView(solo.getView(R.id.SignoutBtnHomePg)); }
/** test clicks user name US 03.03.01 */ public void testClickUsername() { solo.clickOnView(solo.getView(R.id.LoginButton)); solo.enterText((EditText) solo.getView(R.id.emailAddress), "123@123"); solo.clickOnView(solo.getView(R.id.email_sign_in_button)); solo.clickOnView(solo.getView(R.id.AccountBtn)); ListView lv = (ListView) solo.getView(R.id.OwnStalls); View listelement = lv.getChildAt(0); TextView username = (TextView) listelement.findViewById(R.id.StallNameEditStallV); solo.clickOnView(username); solo.assertCurrentActivity("Should be viewProfile", ViewProfile.class); solo.goBack(); solo.goBack(); solo.clickOnView(solo.getView(R.id.SignoutBtnHomePg)); }
public void testRun() { /** Given: I am logged into a valid user profile starting from the main restaurant list */ // Wait for activity: 'com.woww.woww.BaseDrawer' solo.waitForActivity(com.woww.woww.BaseDrawer.class, 2000); // Set default small timeout to 23836 milliseconds Timeout.setSmallTimeout(23836); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageButton.class, 0)); // Click on Log In solo.clickOnText(java.util.regex.Pattern.quote("Log In")); // Wait for activity: 'com.woww.woww.LoginActivity' assertTrue( "com.woww.woww.LoginActivity is not found!", solo.waitForActivity(com.woww.woww.LoginActivity.class)); // Enter the text: 'changed' solo.clearEditText((android.widget.EditText) solo.getView(com.woww.woww.R.id.userName)); solo.enterText((android.widget.EditText) solo.getView(com.woww.woww.R.id.userName), "changed"); // Enter the text: 'c' solo.clearEditText((android.widget.EditText) solo.getView(com.woww.woww.R.id.password)); solo.enterText((android.widget.EditText) solo.getView(com.woww.woww.R.id.password), "c"); // Click on Login solo.clickOnView(solo.getView(com.woww.woww.R.id.loginButton)); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageButton.class, 0)); /** When: I go to the profile page */ // Click on Profile solo.clickOnText(java.util.regex.Pattern.quote("Profile")); ParseUser user = ParseUser.getCurrentUser(); TextView profile = (TextView) solo.getView(R.id.profileName); /** Then: It is my profile page */ assertEquals( "check that on same user profile as login name", user.getUsername(), profile.getText()); /** When: When I go to my reviews from the profile page */ // Long click Restaurant: Rubio's Rating: Review: itwas solo.clickLongInList(1, 1); // Wait for activity: 'com.woww.woww.ViewUserReviewsActivity' /** Then: I am brought to my reviews */ assertTrue( "com.woww.woww.ViewUserReviewsActivity is not found!", solo.waitForActivity(com.woww.woww.ViewUserReviewsActivity.class)); // Press menu back key solo.goBack(); // Press menu back key solo.goBack(); }
public void testRun() throws InterruptedException { /* GIVEN THAT I AM ON THE MAIN RESTAURANT LIST */ // Wait for activity: 'com.woww.woww.BaseDrawer' solo.waitForActivity(com.woww.woww.BaseDrawer.class, 2000); // Set default small timeout to 20009 milliseconds Timeout.setSmallTimeout(30009); // Scroll to ImageView android.widget.ListView listView0 = (android.widget.ListView) solo.getView(android.widget.ListView.class, 0); ArrayList<Restaurant> res; solo.scrollListToLine(listView0, 0); /* WHEN I OPEN THE MENU AND CLICK SORT BY PRICE */ solo.clickOnView(solo.getView(android.widget.ImageView.class, 1)); solo.clickInList(2, 0); Thread.sleep(2000); res = getListViewArray((RestaurantListAdapter) listView0.getAdapter()); /* THEN THE LIST SHOULD BE SORTED BY PRICE IN ASCENDING ORDER */ assertTrue(isOrderingValid(res, "price")); /* WHEN I OPEN THE MENU AND CLICK SORT BY RATING */ solo.clickOnView(solo.getView(android.widget.ImageView.class, 1)); solo.clickInList(3, 0); Thread.sleep(2000); res = getListViewArray((RestaurantListAdapter) listView0.getAdapter()); /* THEN THE LIST SHOULD BE SORTED BY RATING IN DESCENDING ORDER */ assertTrue(isOrderingValid(res, "rating")); /* WHEN I OPEN THE MENU AND CLICK SORT BY NAME */ solo.clickOnView(solo.getView(android.widget.ImageView.class, 1)); solo.clickInList(1, 0); Thread.sleep(5000); res = getListViewArray((RestaurantListAdapter) listView0.getAdapter()); /* THEN THE LIST SHOULD BE SORTED BY NAME IN ALPHABETICAL ORDER */ assertTrue(isOrderingValid(res, "name")); }
@Test public void createAndDeleteAssetClass() { // Given String assetClassName = "cash"; UiTestHelpersRobotium robot = new UiTestHelpersRobotium(solo); robot.clickOnFloatingButton(); solo.waitForActivity(AssetClassEditActivity.class); EditText editText = (EditText) solo.getView(R.id.nameEdit); solo.enterText(editText, assetClassName); solo.clickOnView(solo.getView(R.id.allocationEdit)); robot.enterInNumericInput("2.54"); solo.clickOnText("OK"); // save robot.clickDone(); // confirm that the new item is listed assertThat(solo.searchText(assetClassName)).isTrue(); // solo.clickLongOnText(assetClassName); solo.clickOnText(assetClassName); solo.clickOnText("Delete"); solo.clickOnText("OK"); // Then assertThat(solo.searchText(assetClassName)).isFalse(); }
@Test public void openNewAssetClassForm() { View fab = getActivity().findViewById(R.id.fab); solo.clickOnView(fab); assertThat(solo.waitForActivity(AssetClassEditActivity.class)).isTrue(); }
public void testInvalidLoginActivity() throws Exception { // Unlock the lock screen. solo.unlockScreen(); // Assert that LoginActivity is opened. Activity currentAcctivity = solo.getCurrentActivity(); solo.assertCurrentActivity("Expected LoginActivity", "LoginActivity"); solo.sleep(3000); // if user session isLogin = solo.waitForActivity("LoginActivity"); if (!isLogin) { solo.clickOnMenuItem("Logout", true); } // Enter a valid Email and password solo.enterText((EditText) solo.getView("email_address"), "*****@*****.**"); solo.enterText((EditText) solo.getView("password"), "wrongPassword"); // Click on login button int id = currentAcctivity .getResources() .getIdentifier("btn_login", "id", currentAcctivity.getPackageName()); Button login_btn = (Button) solo.getView(id); solo.clickOnView(login_btn); // Check if login solo.assertCurrentActivity("Invalid user can not log in, test pass!", LoginActivity.class); solo.sleep(2000); isLogin = solo.waitForActivity("LoginActivity"); if (!isLogin) { solo.clickOnMenuItem("Logout", true); } }
public void testValidLoginActivity() throws Exception { // Unlock the lock screen. solo.unlockScreen(); // Assert that LoginActivity is opened. solo.assertCurrentActivity("Expected LoginActivity", "LoginActivity"); // Enter a valid Email and password solo.enterText((EditText) solo.getView("email_address"), "*****@*****.**"); solo.enterText((EditText) solo.getView("password"), "abc123456"); // Click on login button Activity currentAcctivity = solo.getCurrentActivity(); int id = currentAcctivity .getResources() .getIdentifier("btn_login", "id", currentAcctivity.getPackageName()); Button login_btn = (Button) solo.getView(id); solo.clickOnView(login_btn); System.out.print(solo.getCurrentActivity()); // Activity activity = solo.getCurrentActivity(); // boolean authSuceess = !activity.equals(LoginActivity.class); // assertTrue("Sucessfully log in", authSuceess); solo.sleep(1000); System.out.print(solo.getCurrentActivity()); solo.clickOnMenuItem("Logout", true); ; solo.sleep(300); }
/** US 09.04.01 Test that the picture takes up less than 655636 bytes */ public void testPictureSize() { solo.clickOnView(solo.getView(R.id.LoginButton)); solo.enterText((EditText) solo.getView(R.id.emailAddress), "123@123"); solo.clickOnView(solo.getView(R.id.email_sign_in_button)); solo.clickOnView(solo.getView(R.id.AccountBtn)); ListView lv = (ListView) solo.getView(R.id.OwnStalls); View listelement = lv.getChildAt(0); assertTrue( "should take up less than 65536 bytes", ((BitmapDrawable) (((ImageView) listelement.findViewById(R.id.PictureEditStallV)).getDrawable())) .getBitmap() .getByteCount() < 65536); solo.goBack(); solo.clickOnView(solo.getView(R.id.SignoutBtnHomePg)); }
/** US 09.03.01 Test that a picture is displayed in an account */ public void testDisplayPicture() { solo.clickOnView(solo.getView(R.id.LoginButton)); solo.enterText((EditText) solo.getView(R.id.emailAddress), "123@123"); solo.clickOnView(solo.getView(R.id.email_sign_in_button)); solo.clickOnView(solo.getView(R.id.AccountBtn)); ListView lv = (ListView) solo.getView(R.id.OwnStalls); View listelement = lv.getChildAt(0); ImageView image = (ImageView) listelement.findViewById(R.id.PictureEditStallV); assertTrue( "view not visible", ((BitmapDrawable) (((ImageView) listelement.findViewById(R.id.PictureEditStallV)).getDrawable())) .getBitmap() != null); solo.goBack(); solo.clickOnView(solo.getView(R.id.SignoutBtnHomePg)); }
public void testRun() { // Wait for activity: 'com.fitbit.onboarding.landing.LandingActivity_' solo.waitForActivity("LandingActivity_", 500); // Click on Log in solo.clickOnView(solo.getView("btn_log_in")); // Wait for activity: 'com.fitbit.onboarding.login.LoginActivity' assertTrue("LoginActivity is not found!", solo.waitForActivity("LoginActivity")); solo.clearEditText(0); solo.enterText(0, "*****@*****.**"); solo.enterText(1, "wellness"); // Click on Log in solo.clickOnView(solo.getView("login_button")); // Wait for activity: 'com.fitbit.home.ui.HomeActivity_' assertTrue("HomeActivity is not found!", solo.waitForActivity("HomeActivity")); }
/** * Test if the button is navigating user between activities correctly. Since the GUI is skeleton * now, this button is not tested: Stats */ public void testRes_Navigation() { innerFunction(childrenButton, childrenList.class); innerFunction(locationButton, locationList.class); solo.clickOnView(logOutButton); solo.sleep(500); solo.assertCurrentActivity("ERR - Could not jump to login screen.", Login.class); }
// the function just for help to minimize and reuse the code private void innerFunction(Button btn, Class cls) { solo.clickOnView(btn); solo.sleep(500); solo.assertCurrentActivity("ERR - Could not jump to children list.", cls); solo.hideSoftKeyboard(); solo.goBack(); solo.goBack(); solo.assertCurrentActivity("ERR - Could not jump back from children list.", researcher.class); }
public void testRun() { // Wait for activity: 'com.fitbit.onboarding.landing.LandingActivity_' solo.waitForActivity("LandingActivity_", 2000); // Sleep for x milliseconds solo.sleep(500); // screenshot solo.takeScreenshot("d_e_termsPrivacy_a_launch"); // Click on Join Fitbit solo.clickOnView(solo.getView("btn_join_fitbit")); // Wait for activity: 'com.fitbit.onboarding.setup.CheckDeviceActivity_' assertTrue("CheckDeviceActivity_ is not found!", solo.waitForActivity("CheckDeviceActivity_")); // Wait for activity: 'com.fitbit.device.ui.setup.choose.ChooseTrackerActivity_' assertTrue( "ChooseTrackerActivity_ is not found!", solo.waitForActivity("ChooseTrackerActivity_")); // Sleep for x milliseconds solo.sleep(500); // screenshot solo.takeScreenshot("d_e_termsPrivacy_b_deviceList"); // Click on Charge HR Wireless Heart Rate + sleep wristband with display solo.clickInList(2, 0); // Wait for activity: 'com.fitbit.device.ui.setup.choose.ConfirmDeviceActivity_' assertTrue( "ConfirmDeviceActivity_ is not found!", solo.waitForActivity("ConfirmDeviceActivity_")); // Sleep for x milliseconds solo.sleep(500); // screenshot solo.takeScreenshot("d_e_termsPrivacy_c_chargeHR"); // Click on Set up your Charge HR solo.clickOnView(solo.getView("btn_setup")); // Wait for activity: 'com.fitbit.onboarding.login.LoginActivity' assertTrue("LoginActivity is not found!", solo.waitForActivity("LoginActivity")); solo.enterText(0, "*****@*****.**"); solo.enterText(1, "spoon123"); solo.clickOnView(solo.getView("termsCheckBox")); // Click on Create an account solo.clickOnView(solo.getView("login_button")); // Wait for activity: 'com.fitbit.onboarding.profile.AboutYouActivity_' assertTrue("AboutYouActivity is not found!", solo.waitForActivity("AboutYouActivity")); }
public void testRun() { // Wait for activity: 'com.fitbit.onboarding.landing.LandingActivity_' solo.waitForActivity("LandingActivity_", 2000); solo.clickOnText(java.util.regex.Pattern.quote("asleep")); solo.takeScreenshot("f_sleep_e1"); // Wait for activity: 'com.fitbit.sleep.ui.landing.SleepLoggingLandingActivity' assertTrue( "SleepLoggingLandingActivity is not found!", solo.waitForActivity("SleepLoggingLandingActivity")); // Sleep solo.sleep(1000); solo.takeScreenshot("f_sleep_e2"); // Click on Empty Text View // solo.clickOnView(solo.getView(android.widget.TextView.class, 24)); solo.clickOnScreen(1290, 255); // Sleep solo.sleep(1000); // solo.takeScreenshot("f_sleep_a3"); // Click on Begin Sleep Now solo.clickInList(2, 0); // Wait for activity: 'com.fitbit.sleep.ui.SleepRecordActivity' assertTrue("SleepRecordActivity is not found!", solo.waitForActivity("SleepRecordActivity")); // Sleep solo.sleep(65000); solo.takeScreenshot("f_sleep_e4"); // Click on I'm Awake solo.clickOnView(solo.getView("awakeButton")); // Sleep solo.sleep(1000); solo.takeScreenshot("f_sleep_e5"); // Click on View Summary solo.clickOnView(solo.getView("awakeButton")); // Sleep solo.sleep(1500); solo.takeScreenshot("f_sleep_e6"); solo.goBack(); // Sleep solo.sleep(1500); solo.takeScreenshot("f_sleep_e7"); }
// Check whether the application is first started. public static void testFirstLaunch(Solo solo) throws Exception { solo.sleep(3000); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(solo.getCurrentActivity()); boolean flag = prefs.getBoolean("Time", false); if (!flag) { solo.sleep(3000); solo.clickOnView(solo.getView("welcome_skip")); solo.sleep(2000); solo.clickOnView(solo.getView("category_editor_ok_btn")); solo.sleep(2000); SharedPreferences.Editor editor = prefs.edit(); editor.putBoolean("Time", true); editor.commit(); junit.framework.Assert.assertTrue("Not the first time launch app", true); } else { junit.framework.Assert.assertTrue("Not the first time launch app", true); } }
public void testRun() { solo.waitForActivity("LandingActivity_", 500); solo.clickOnText("out"); solo.waitForActivity("FoodLoggingLandingActivity_"); solo.clickOnView(solo.getView("add_item")); solo.clickOnView(solo.getView("search")); solo.enterText(0, "lasag"); solo.clickOnText("Lasagna Entree"); solo.waitForActivity("LogFoodActivity_"); solo.clickOnView(solo.getView("txt_date")); solo.setDatePicker(0, 2014, 5, 10); solo.clickOnView(solo.getView(android.R.id.button1)); }
public void testRun() { int delay = 2000; int longDelay = 5000; // Wait for activity: 'course.labs.locationlab.PlaceViewActivity' solo.waitForActivity(course.labs.locationlab.PlaceViewActivity.class, delay); // Click on action bar item solo.clickOnActionBarItem(course.labs.locationlab.R.id.place_one); solo.sleep(delay); // Click on Get New Place assertTrue( "Footer view isn't visible", solo.waitForView(course.labs.locationlab.R.id.footer, 0, delay)); solo.clickOnView(solo.getView(course.labs.locationlab.R.id.footer)); solo.sleep(2000); // Assert that PlaceBadge is shown assertTrue( "PlaceBadge is not shown!", solo.waitForText(solo.getString(R.string.the_greenhouse_string), 1, longDelay)); // Click on action bar item solo.clickOnActionBarItem(course.labs.locationlab.R.id.place_one); solo.sleep(delay); // Click on Get New Place solo.clickOnView(solo.getView(course.labs.locationlab.R.id.footer)); String samePlaceString = solo.getString(course.labs.locationlab.R.string.duplicate_location_string); // Assert that duplicate location Toast is shown assertTrue(samePlaceString + " is not shown!", solo.waitForText(samePlaceString, 1, longDelay)); }
public void testPlayPingPongButtonPress() throws Exception { Thread.sleep(TestOptions.ACCEPTABLE_STARTUP_LENGTH); // Asserttrue(outputTextView_.isAttachedToWindow() == true); assertTrue(outputTextView_.getText().length() == 0); // Click on the 'play' button mSolo.clickOnView(mSolo.getView(edu.vuum.mocca.R.id.play_button)); // wait for the threads to execute Thread.sleep(TestOptions.ACCEPTABLE_RUNTIME_LENGTH); assertTrue( outputTextView_ .getText() .toString() .replaceAll(WSEXP, "") .equals(TestOptions.ANDROID_TEXTVIEW.replaceAll(WSEXP, ""))); }
/** test user can add stall/delete stall US 01.04.01 US 01.05.01 */ public void testStallsList() { solo.clickOnView(solo.getView(R.id.LoginButton)); solo.enterText((EditText) solo.getView(R.id.emailAddress), "__test1"); solo.clickOnView(solo.getView(R.id.email_sign_in_button)); solo.clickOnView(solo.getView(R.id.AccountBtn)); solo.assertCurrentActivity("should be lists of own stalls", AccountActivity.class); solo.clickOnView(solo.getView(R.id.AddBtn)); solo.enterText((EditText) solo.getView(R.id.NamePrompET), "__test1"); solo.enterText((EditText) solo.getView(R.id.DescriptionET), "Test."); solo.clickOnView(solo.getView(R.id.AddInAddBtn)); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } ElasticSearchCtr.GetStall getStall = new ElasticSearchCtr.GetStall(); String[] temp = new String[2]; temp[0] = "__test1"; temp[1] = "Owner"; tempAry = new ArrayList<>(); try { getStall.execute(temp); tempAry = getStall.get(); } catch (InterruptedException e) { e.printStackTrace(); } catch (ExecutionException e) { e.printStackTrace(); } assertTrue(tempAry.size() >= 1); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } ElasticSearchCtr.DeleteStall deleteStall = new ElasticSearchCtr.DeleteStall(); deleteStall.execute(tempAry.get(0)); Boolean check = false; try { check = deleteStall.get(); } catch (InterruptedException e) { e.printStackTrace(); } catch (ExecutionException e) { e.printStackTrace(); } assertTrue("didn't delete Stall", check); solo.goBack(); solo.clickOnView(solo.getView(R.id.SignoutBtnHomePg)); }
public void testRun() { // Wait for activity: 'course.labs.locationlab.PlaceViewActivity' solo.waitForActivity(course.labs.locationlab.PlaceViewActivity.class, 2000); // Set default small timeout to 55372 milliseconds Timeout.setSmallTimeout(55372); // Click on action bar item solo.clickOnActionBarItem(course.labs.locationlab.R.id.place_one); solo.sleep(2000); // Click on Get New Place solo.clickOnView(solo.getView(course.labs.locationlab.R.id.footer)); solo.sleep(5000); // Click on action bar item solo.clickOnActionBarItem(course.labs.locationlab.R.id.print_badges); }
public void testRun() { // Wait for activity: 'it.feio.android.omninotes.MainActivity' solo.waitForActivity(it.feio.android.omninotes.MainActivity.class, 4000); // Set default small timeout to 30522 milliseconds Timeout.setSmallTimeout(30522); // Click on ImageView solo.clickOnView(solo.getView(it.feio.android.omninotes.R.id.fab_expand_menu_button)); // Click on LinearLayout solo.clickOnView(solo.getView(it.feio.android.omninotes.R.id.reminder_layout)); // Check that no reminder is set assertEquals( ((TextView) solo.getView(it.feio.android.omninotes.R.id.datetime)) .getText() .toString() .length(), 0); // Wait for dialog solo.waitForDialogToOpen(5000); // Click on Done solo.clickOnView(solo.getView(it.feio.android.omninotes.R.id.done)); // Wait for dialog solo.waitForDialogToOpen(5000); // Click on Done solo.clickOnView(solo.getView(it.feio.android.omninotes.R.id.done_button)); // Check if a reminder is present assertNotNull( ((TextView) solo.getView(it.feio.android.omninotes.R.id.datetime)).getText().toString()); // Click on Empty Text View solo.clickOnView(solo.getView(it.feio.android.omninotes.R.id.menu_attachment)); // Click on Sketch solo.clickOnView(solo.getView(it.feio.android.omninotes.R.id.sketch)); // Draw a line solo.drag(222.79372F, 470.5643F, 590.6923F, 1048.4539F, 40); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageButton.class, 0)); // Wait for thumbnail solo.sleep(1000); // Click on RelativeLayout solo.clickInList(1, 0); // Wait for activity: 'it.feio.android.omninotes.GalleryActivity' assertTrue( "it.feio.android.omninotes.GalleryActivity is not found!", solo.waitForActivity(it.feio.android.omninotes.GalleryActivity.class)); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageView.class, 0)); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageView.class, 0)); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageButton.class, 0)); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageButton.class, 0)); }
/* This test will simulate a user accept a request for her ride and create a group. Since we can not accept requests now, this test can only create a group. */ public void testAcceptance_4() throws Exception { // Email : [email protected] Password:123 // Unlock the lock screen. solo.unlockScreen(); solo.enterText((EditText) solo.getView("email_address"), email); solo.enterText((EditText) solo.getView("password"), password); // Click on login button currentActivity = solo.getCurrentActivity(); int id_login = currentActivity .getResources() .getIdentifier("btn_login", "id", currentActivity.getPackageName()); Button login_btn = (Button) solo.getView(id_login); solo.clickOnView(login_btn); solo.sleep(1000); currentActivity = solo.getCurrentActivity(); // click menu item int id_groups = currentActivity .getResources() .getIdentifier("my_groups", "id", currentActivity.getPackageName()); solo.sleep(500); solo.clickOnView(solo.getView(id_groups)); solo.sleep(1000); currentActivity = solo.getCurrentActivity(); int id_createAGroup = currentActivity .getResources() .getIdentifier("button_createagroup", "id", currentActivity.getPackageName()); solo.clickOnView(solo.getView(id_createAGroup)); solo.sleep(1000); // Wait for CreateAGroupActivity solo.waitForActivity("CreateAGroupActivity"); Activity currentAcctivity = solo.getCurrentActivity(); solo.enterText((EditText) solo.getView("createGroupName"), "TestGroup"); // select group type int GroupCategroyId = currentAcctivity .getResources() .getIdentifier("pasttimeButton", "id", currentAcctivity.getPackageName()); RadioButton pasttimeButton = (RadioButton) solo.getView(GroupCategroyId); solo.clickOnView(pasttimeButton); solo.enterText( (EditText) solo.getView("createGroupDescription"), "This group is created to test this function."); int mapButton = currentAcctivity .getResources() .getIdentifier("createFixedPointAddress", "id", currentAcctivity.getPackageName()); Button createFixedPointAddress = (Button) solo.getView(mapButton); solo.clickOnView(createFixedPointAddress); // select pin boolean initialID = solo.waitForFragmentById( R.id .map); // where id.satellite is defined in the R file, eventually would time out and // throw error if fragment was not present solo.sleep(1000); Activity mapActivity = solo.getCurrentActivity(); int map = mapActivity.getResources().getIdentifier("map", "id", currentAcctivity.getPackageName()); View mapView = solo.getView(map); solo.clickOnView(mapView); solo.sleep(1000); int mapSubmit = currentAcctivity .getResources() .getIdentifier("submit", "id", currentAcctivity.getPackageName()); Button btn_mapSubmit = (Button) solo.getView(mapSubmit); solo.clickOnView(btn_mapSubmit); solo.sleep(1000); // boolean back = solo.waitForActivity("creatAGroupActivity"); // assertTrue("Sucessfully back to activity", back); currentAcctivity = solo.getCurrentActivity(); int GroupTypeId = currentAcctivity .getResources() .getIdentifier("p1privateButton", "id", currentAcctivity.getPackageName()); RadioButton p1privateButton = (RadioButton) solo.getView(GroupTypeId); solo.clickOnView(p1privateButton); solo.sleep(500); int submit = currentAcctivity .getResources() .getIdentifier("btn_submit", "id", currentAcctivity.getPackageName()); Button btn_submit = (Button) solo.getView(submit); solo.clickOnView(btn_submit); solo.sleep(1000); solo.clickOnMenuItem("Logout", true); }
public void testCase1() { Log.d("xiacj", "test1()"); SharedPreferences preferences = getInstrumentation() .getTargetContext() .getSharedPreferences("com.tencent.mm_preferences", 0); String login_user_name = preferences.getString("login_user_name", ""); // 判断当前界面 String className = solo.getCurrentActivity().getClass().getSimpleName(); Log.e(TAG, "className:" + className + " user:"******"LauncherUI")) { Boolean b1 = solo.searchText("快捷方式"); if (b1) { Log.d(TAG, "found 界面: 快捷方式"); solo.clickOnButton("取消"); } Boolean b2 = solo.searchText("登录"); Boolean b3 = solo.searchText("语言"); if (b2 && b3) { Log.d(TAG, "found 界面: 登录、语言"); solo.clickOnButton("登录"); solo.sleep(2000); EditText editText; String str; editText = solo.getEditText(0); str = editText.getHint().toString(); Log.e(TAG, "hint text: " + str); solo.enterText(editText, name1); editText = solo.getEditText(0); str = editText.getHint().toString(); Log.e(TAG, "hint text: " + str); solo.enterText(editText, password); solo.clickOnText("登录"); } else { Boolean b4 = solo.searchText("遇到问题"); if (b4) { Log.d(TAG, "found 界面: 遇到问题"); EditText editText = solo.getEditText(0); String str = editText.getHint().toString(); Log.e(TAG, "hint text: " + str); solo.enterText(editText, password); solo.clickOnText("登录"); } } } else { solo.assertCurrentActivity("进入LoginHistoryUI", "LoginHistoryUI"); solo.waitForText("切换帐号"); solo.clickOnText("切换帐号"); solo.waitForView(ListView.class); ListView lv = solo.getView(ListView.class, 0); View itemView = lv.getChildAt(1); solo.clickOnView(itemView); solo.sleep(1000); // 断言进入登录界面 solo.assertCurrentActivity("进入LoginUI", "LoginUI"); solo.waitForView(solo.getButton(0)); solo.enterText(0, name); solo.enterText(1, password); solo.clickOnButton(0); solo.sleep(1000 * 3); } try { Log.e(TAG, "try>>>>>>>>>>>>>>>>>>>>>>>>"); solo.assertCurrentActivity("进入LauncherUI", "LauncherUI"); if (true) { // 点击发现 solo.waitForText("发现"); solo.clickOnText("发现"); solo.sleep(1000); Boolean b = solo.searchText("朋友圈") && solo.searchText("购物"); if (b) { Log.d(TAG, "进入发现"); } solo.sleep(2000); } } catch (Exception e) { Log.e(TAG, "catch:Exception e:" + e.getMessage()); } finally { Log.e(TAG, "finally>>>>>>>>>>>>>>>>>>>>>>>>doFinally"); // doFinally(); } solo.sleep(1000 * 3); }
public void testRun() { // Wait for activity: 'za.co.etollgantrytracker.MainActivity' solo.waitForActivity(za.co.etollgantrytracker.MainActivity.class, 2000); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageButton.class, 0)); // Click on Vehicle settings solo.clickInList(1, 0); // Wait for activity: 'za.co.etollgantrytracker.VehicleSettingsActivity' assertTrue( "za.co.etollgantrytracker.VehicleSettingsActivity is not found!", solo.waitForActivity(TariffSettingsActivity.class)); // Click on Non-registered - No eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio2)); // Click on eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio3)); // Click on Standard - No eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio4)); // Click on Non-registered - No eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio5)); // Click on eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio6)); // Click on Standard - No eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio7)); // Click on Non-registered - No eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio8)); // Click on eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio9)); // Click on Standard - No eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio1)); // Click on Non-registered - No eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio2)); // Click on eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio3)); // Click on Non-registered - No eTag solo.clickOnView(solo.getView(za.co.etollgantrytracker.R.id.radio2)); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageButton.class, 0)); // Click on ImageView solo.clickOnView(solo.getView(android.widget.ImageButton.class, 0)); // Click on Vehicle settings solo.clickInList(1, 0); // Wait for activity: 'za.co.etollgantrytracker.VehicleSettingsActivity' assertTrue( "za.co.etollgantrytracker.VehicleSettingsActivity is not found!", solo.waitForActivity(TariffSettingsActivity.class)); // Press menu back key solo.goBack(); }
/** * Test method to check if the Sales Management Game is loaded with proper default initialization */ public void testPlayGridActivityLoadedWithData() { robotiumSolo.waitForActivity(com.shrikanthavale.salesmanagement.StartPageActivity.class, 2000); assertTrue( "com.shrikanthavale.salesmanagement.StartPageActivity is not found!", robotiumSolo.waitForActivity(com.shrikanthavale.salesmanagement.StartPageActivity.class)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.startPageStartButton)); assertTrue( "com.shrikanthavale.salesmanagement.PlayGridActivity is not found!", robotiumSolo.waitForActivity(com.shrikanthavale.salesmanagement.PlayGridActivity.class)); Timeout.setSmallTimeout(22015); while (true) { int randomNumber = (int) (Math.random() * (5 - 1)) + 1; System.out.println("****************" + randomNumber); switch (randomNumber) { case 1: robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.upNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.upNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.leftNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.rightNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.downNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.rightNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.downNavigation)); break; case 2: robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.rightNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.leftNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.downNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.upNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.leftNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.downNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.upNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.leftNavigation)); case 3: robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.rightNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.leftNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.upNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.downNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.leftNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.upNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.downNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.leftNavigation)); case 4: robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.downNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.rightNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.leftNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.upNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.rightNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.leftNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.downNavigation)); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.rightNavigation)); default: break; } if (((PlayGridActivity) robotiumSolo.getCurrentActivity()).checkSufficientTimeCustomerTravel() || ((PlayGridActivity) robotiumSolo.getCurrentActivity()) .checkSufficientTimeCustomerVisit()) { robotiumSolo.sendKey(Solo.MENU); robotiumSolo.sleep(1000); robotiumSolo.waitForText(robotiumSolo.getString(R.string.refreshGrid)); robotiumSolo.clickOnActionBarItem(R.id.refresh_game); robotiumSolo.waitForDialogToOpen(); robotiumSolo.clickOnButton(robotiumSolo.getString(R.string.popupdialogConfirmButton)); robotiumSolo.waitForDialogToClose(); robotiumSolo.waitForDialogToOpen(); robotiumSolo.waitForDialogToClose(); continue; } robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.confirmSelection)); // get the current focus button Button focusedButton = ((PlayGridActivity) robotiumSolo.getCurrentActivity()).getFocusedButton(); if (focusedButton .getText() .toString() .trim() .equals(robotiumSolo.getString(R.string.emptystring)) || focusedButton.getText().toString().trim().contains("Start") || focusedButton.getText().toString().trim().contains("R")) { // non customer node was clicked assertTrue( "Non Customer node clicked error message missing", robotiumSolo.searchText(robotiumSolo.getString(R.string.nonnodeclickederrormessage))); continue; } else if (((PlayGridActivity) robotiumSolo.getCurrentActivity()) .getVisitedCustomers() .contains(focusedButton.getId())) { assertTrue( "Visited Customer node clicked error message missing", robotiumSolo.searchText(robotiumSolo.getString(R.string.alreadyvisitednode))); continue; } else { robotiumSolo.waitForDialogToOpen(); robotiumSolo.waitForDialogToClose(); assertTrue( "com.shrikanthavale.salesmanagement.CaseStudyDescriptionActivity is not found!", robotiumSolo.waitForActivity( com.shrikanthavale.salesmanagement.CaseStudyDescriptionActivity.class)); break; } } robotiumSolo.clickOnView(robotiumSolo.getView(R.id.scrollView1)); robotiumSolo.scrollDown(); robotiumSolo.scrollUp(); robotiumSolo.scrollDown(); robotiumSolo.scrollUp(); robotiumSolo.clickOnView( robotiumSolo.getView(com.shrikanthavale.salesmanagement.R.id.optionsNavigate)); robotiumSolo.waitForDialogToOpen(); assertTrue( "Loading Dialogue Missing", robotiumSolo.waitForText("Loading Option Details .... Please Wait")); robotiumSolo.waitForDialogToClose(); assertTrue( "com.shrikanthavale.salesmanagement.CaseStudyDescriptionActivity is not found!", robotiumSolo.waitForActivity( com.shrikanthavale.salesmanagement.CaseStudyOptionsActivity.class)); robotiumSolo.clickOnView(robotiumSolo.getView(R.id.scrollViewOptions)); robotiumSolo.scrollDown(); robotiumSolo.scrollUp(); robotiumSolo.scrollDown(); robotiumSolo.scrollUp(); robotiumSolo.clickOnRadioButton(0); robotiumSolo.clickOnRadioButton(1); robotiumSolo.clickOnRadioButton(2); robotiumSolo.clickOnRadioButton(1); Display display = robotiumSolo.getCurrentActivity().getWindowManager().getDefaultDisplay(); Instrumentation inst = getInstrumentation(); PackageManager pm = robotiumSolo.getCurrentActivity().getPackageManager(); Monkey monkey = new Monkey(display, packageToTest, inst, pm); for (int i = 0; i < NUM_EVENTS; i++) { monkey.nextRandomEvent(); } }
/** Test adding/deleting a picture to/from a stall US 09.01.01 US 09.02.01 */ public void testPictureStalls() { Bitmap bitmap = Bitmap.createBitmap(new int[] {1, 2, 5, 4}, 2, 2, Bitmap.Config.ARGB_8888); solo.clickOnView(solo.getView(R.id.LoginButton)); solo.enterText((EditText) solo.getView(R.id.emailAddress), "robo"); solo.clickOnView(solo.getView(R.id.email_sign_in_button)); solo.clickOnView(solo.getView(R.id.AccountBtn)); solo.clickOnView(solo.getView(R.id.AddBtn)); solo.enterText((EditText) solo.getView(R.id.NamePrompET), "robo"); solo.enterText((EditText) solo.getView(R.id.DescriptionET), "Test."); solo.clickOnView(solo.getView(R.id.AddInAddBtn)); solo.goBack(); solo.clickOnView(solo.getView(R.id.AccountBtn)); ListView lv = (ListView) solo.getView(R.id.OwnStalls); View element = lv.getChildAt(0); assertNotNull(element); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } ElasticSearchCtr.GetStall getStall = new ElasticSearchCtr.GetStall(); String[] temp = new String[2]; temp[0] = "robo"; temp[1] = "Owner"; tempAry = new ArrayList<>(); try { getStall.execute(temp); tempAry = getStall.get(); } catch (InterruptedException e) { e.printStackTrace(); } catch (ExecutionException e) { e.printStackTrace(); } assertTrue(tempAry.size() == 1); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } tempAry.get(0).setThumbnail(bitmap); ElasticSearchForTest.updateStallES updateStallES = new ElasticSearchForTest.updateStallES(); updateStallES.execute(tempAry.get(0)); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } assertEquals("Should be the created bitmap", bitmap, tempAry.get(0).getThumbnail()); ListView lv2 = (ListView) solo.getView(R.id.OwnStalls); View listelement = lv2.getChildAt(0); TextView description = (TextView) listelement.findViewById(R.id.DescriptionEditStallV); solo.clickOnView(description); solo.clickOnView(solo.getView(R.id.DelPicEditStallBtn)); solo.clickOnView(solo.getView(R.id.SaveEdit)); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } getStall = new ElasticSearchCtr.GetStall(); try { getStall.execute(temp); tempAry = getStall.get(); } catch (InterruptedException e) { e.printStackTrace(); } catch (ExecutionException e) { e.printStackTrace(); } try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } assertEquals("Should be a null bitmap", null, tempAry.get(0).getThumbnail()); solo.goBack(); solo.clickOnView(solo.getView(R.id.SignoutBtnHomePg)); solo.clickOnView(solo.getView(R.id.LoginButton)); solo.enterText((EditText) solo.getView(R.id.emailAddress), "robo"); solo.clickOnView(solo.getView(R.id.email_sign_in_button)); solo.clickOnView(solo.getView(R.id.AccountBtn)); solo.clickInList(0); solo.assertCurrentActivity("should be in edit stall", EditStall.class); solo.clickOnView(solo.getView(R.id.EditStallDeleteBtn)); solo.goBack(); solo.clickOnView(solo.getView(R.id.SignoutBtnHomePg)); }