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); } }
// 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 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); }
public void testOnClickLogoutMenuItem() { solo.clickOnMenuItem(getActivity().getString(R.string.logout)); getInstrumentation().waitForIdleSync(); solo.hideSoftKeyboard(); solo.assertCurrentActivity("Expected Login activity", "Login"); solo.goBack(); }
/** * 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); }
/** 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)); }
public void testRegister() { // solo.assertCurrentActivity("Wrong Activity", Login.class); // solo.clickOnButton(1); solo.assertCurrentActivity("This should be the Main Activity", Register.class); solo.enterText(0, username); solo.enterText(1, password); solo.enterText(2, email); solo.enterText(3, phoneNum); solo.clickOnButton(0); solo.waitForDialogToClose(); }
/** 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)); }
/** 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 testOnClickSettingsMenuItem() { solo.clickOnMenuItem(getActivity().getString(R.string.settings)); getInstrumentation().waitForIdleSync(); solo.assertCurrentActivity("Expected Settings activity", "Settings"); solo.goBack(); }
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); }
/** 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)); }