Пример #1
0
        public void c_logUserIn()
        {
            AndroidElement usernameTxtBox = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[3]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[2]/android.view.View[1]/android.view.View[1]/android.widget.EditText[1]");

            usernameTxtBox.Clear();
            usernameTxtBox.SendKeys(MOODLE_USERNAME);

            AndroidElement passwordTxtBox = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[3]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[2]/android.view.View[1]/android.view.View[2]/android.widget.EditText[1]");

            passwordTxtBox.SendKeys(MOODLE_PASSWORD);

            AndroidElement loginBtn = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[3]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[2]/android.view.View[1]/android.view.View[3]/android.widget.Button[1]");

            loginBtn.Click();

            //AndroidElement sideMenuToggleBtn = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[2]/android.view.View[1]/android.widget.Button[1]");
            //sideMenuToggleBtn.Click();

            AndroidElement searchBtn = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[2]/android.view.View[1]/android.view.View[2]/android.view.View[1]");

            searchBtn.Click();

            AndroidElement searchTxtBox = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[3]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.widget.EditText[1]");

            searchTxtBox.SendKeys(SEARCH_TEXT);

            StringAssert.Contains(searchTxtBox.Text, SEARCH_TEXT);
            wait(1000);
        }
Пример #2
0
        /// <summary>
        /// 执行登录
        /// </summary>
        /// <param name="appAccess"></param>
        private void DoLogin(AndroidAppAccess appAccess, string loginName, string loginPassword)
        {
            AndroidElement toLoginButton = appAccess.GetElementByClassNameAndText("android.widget.Button", new string[] { "登录" }, true, true);

            toLoginButton.Click();
            appAccess.GetElementByClassNameAndText("android.widget.Button", new string[] { "忘记密码?" }, true, true);

            AndroidElement loginNameLayoutElement = appAccess.GetElementByClassNameAndText("android.widget.LinearLayout", new string[] { "邮箱或电话" }, true, true);
            AndroidElement loginNameElement       = appAccess.GetElementByClassNameAndIndex(loginNameLayoutElement, "android.widget.EditText", 0, true);

            loginNameElement.Click();
            loginNameElement.Clear();
            loginNameElement.SendKeys(loginName);

            AndroidElement loginPasswordLayoutElement = appAccess.GetElementByClassNameAndText("android.widget.LinearLayout", new string[] { "密码" }, true, true);
            AndroidElement loginPasswordElement       = appAccess.GetElementByClassNameAndIndex(loginPasswordLayoutElement, "android.widget.EditText", 0, true);

            loginPasswordElement.Click();
            loginPasswordElement.Clear();
            loginPasswordElement.SendKeys(loginPassword);

            AndroidElement loginButton = appAccess.GetElementByClassNameAndText("android.widget.Button", new string[] { "登录" }, true, true);

            loginButton.Click();

            //判断是否登录成功
            this.GetNavElement(appAccess, true);
        }
Пример #3
0
        public void d_searchCourse()
        {
            AndroidElement searchTxtBox = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[3]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.widget.EditText[1]");

            searchTxtBox.Clear();
            wait(500);
            searchTxtBox.SendKeys(SEARCH_TEXT);

            AndroidElement searchBtn = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[3]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.widget.Button[1]\n");

            searchBtn.Click();
        }
 public void Input(string id, string value, params string[] arguments)
 {
     try
     {
         AndroidElement element = (AndroidElement)GetElement(id);
         element.Click();
         element.Clear();
         element.SendKeys(value);
     }
     catch
     {
         if (arguments.Contains("-i"))
         {
             return;
         }
         throw;
     }
 }
Пример #5
0
        public void connectSite()
        {
            AndroidElement siteTxtBox = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[3]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[2]/android.view.View[1]/android.view.View[1]/android.widget.EditText[1]");

            siteTxtBox.Clear();
            siteTxtBox.SendKeys(MOODLE_SITE);

            AndroidElement connectBtn = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[3]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[2]/android.view.View[1]/android.view.View[2]/android.widget.Button[1]");

            connectBtn.Click();
            wait(100);

            AndroidElement usernameTxtBox = find("//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.webkit.WebView[1]/android.webkit.WebView[1]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[3]/android.view.View[1]/android.view.View[1]/android.view.View[1]/android.view.View[2]/android.view.View[1]/android.view.View[1]/android.widget.EditText[1]");

            usernameTxtBox.SendKeys(MOODLE_USERNAME);

            StringAssert.Contains(usernameTxtBox.Text, MOODLE_USERNAME);

            wait(1000);
        }
Пример #6
0
        // Method For TextBox
        public void SetTextBoxValue(string textboxvalue, string locator, string locator_type)
        {
            try
            {
                if (locator_type == "id")
                {
                    waitDriver.Until(ExpectedConditions.ElementIsVisible(By.Id(locator)));
                    {
                        AndroidElement Value = (AndroidElement)waitDriver.Until(ExpectedConditions.ElementToBeClickable(By.Id(locator)));
                        Thread.Sleep(100);
                        Value.Click();
                        Value.Clear();
                        Value.SendKeys(textboxvalue);
                        if (locator == "com.hbl.android.hblmobilebanking:id/s_hbpsBillCompanies")
                        {
                            return;
                        }
                        driver.HideKeyboard();
                        //try
                        //{
                        //driver.HideKeyboard();
                        //}
                        //catch
                        //{

                        //}

                        //driver.HideKeyboard();
                        //if (locator == "com.hbl.android.hblmobilebanking:id/s_hbpsBillCompanies")
                        //{
                        //    Value = (AndroidElement)waitDriver.Until(ExpectedConditions.ElementToBeClickable(By.Id("com.hbl.android.hblmobilebanking:id/withoutMargin_Lay")));
                        //    Size size = Value.Size;
                        //    var location = Value.Location;
                        //    //Size dimension = driver.Manage().Window.Size;
                        //    int x = location.X / 2;
                        //    //int start_y = (int)(dimension.Height * height_start_dimension);
                        //    //int end_y = (int)(dimension.Height * height_end_dimension);
                        //    ITouchAction tc = new TouchAction(driver);
                        //    Thread.Sleep(2000);
                        //    tc.Press(x + 100, location.Y).Wait(1000).Release().Perform();

                        //}
                    }
                }
                else if (locator_type == "xpath")
                {
                    waitDriver.Until(ExpectedConditions.ElementIsVisible(By.XPath(locator)));
                    {
                        AndroidElement Value = (AndroidElement)waitDriver.Until(ExpectedConditions.ElementToBeClickable(By.XPath(locator)));
                        Thread.Sleep(100);
                        Value.Click();
                        Value.Clear();
                        Value.SendKeys(textboxvalue);
                        driver.HideKeyboard();
                    }
                }
            }
            catch (ElementNotVisibleException)
            {
                throw new AssertFailedException(string.Format("The element provided {0} is not on screen", locator));
            }
            catch (StaleElementReferenceException)
            {
                throw new AssertFailedException(string.Format("The element provided {0} is Stale", locator));
            }
            catch (InvalidElementStateException)
            {
                throw new AssertFailedException(string.Format("The element provided {0} is not in desired state", locator));
            }
            catch (Exception ex)
            {
                throw new Exception("ex message: " + ex.Message);
                throw new AssertFailedException(string.Format("The element provided {0} is invalid", locator));
            }
        }