当前位置: 首页>>代码示例>>C#>>正文


C# AndroidDriver.FindElementByXPath方法代码示例

本文整理汇总了C#中OpenQA.Selenium.Appium.Android.AndroidDriver.FindElementByXPath方法的典型用法代码示例。如果您正苦于以下问题:C# AndroidDriver.FindElementByXPath方法的具体用法?C# AndroidDriver.FindElementByXPath怎么用?C# AndroidDriver.FindElementByXPath使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在OpenQA.Selenium.Appium.Android.AndroidDriver的用法示例。


在下文中一共展示了AndroidDriver.FindElementByXPath方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Main


//.........这里部分代码省略.........
                hybirdCapabilities.SetCapability(MobileCapabilityType.PlatformVersion, "5.1");
                //if don't want to launch the app in device directly, need set the package and activity
                //otherwise, need specifies the absolute app folder
                hybirdCapabilities.SetCapability(MobileCapabilityType.App, "D:\\AppFolder\\App.apk");

                AppiumDriver<IWebElement> hybirdDriver = new AndroidDriver<IWebElement>(
                    new Uri("http://127.0.0.1:4723/wd/hub"), hybirdCapabilities);

                //Specifies the amount of time the driver should wait when searching for an
                //     element if it is not immediately present
                hybirdDriver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10));

                //Get all contexts of the app, check whether include webview
                IList<string> driverContexts = hybirdDriver.Contexts;

                Console.WriteLine("Out put all contexts of the driver");
                foreach(string s in driverContexts)
                {
                    Console.WriteLine(s);
                }
                //Set the context as "WEBVIEW*", then can locate the element as in browser. (can use the API of the Selenium)
                hybirdDriver.Context = driverContexts.Last();

                //Set the timeout again for webview driver.
                hybirdDriver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10));

                //Get the Login elements
                IWebElement emailElement = hybirdDriver.FindElement(By.Id("email"));
                IWebElement passwordElement = hybirdDriver.FindElement(By.Id("password"));
                IWebElement loginElement = hybirdDriver.FindElementById("login-button");

                //Set the login information
                emailElement.SendKeys("[email protected]");
                passwordElement.SendKeys("testing");
                IWebElement emailtElementXpath = hybirdDriver.FindElementByXPath("//input[@ng-model=\"login.user.email\"]");

                loginElement.Click();

                //#######Test Case3

                IWebElement friends = (IWebElement)hybirdDriver.FindElement(By.XPath("//div[@class=\"nav-bar-block\" and @nav-bar=\"active\" ]//a[@ui-sref=\"p.main.friends\"]"));
                friends.Click();

                IWebElement search = (IWebElement)hybirdDriver.FindElementById("search");
                search.SendKeys("jack1");

                //Wait for 1 second for the search result
                System.Threading.Thread.Sleep(1000);

                IList<IWebElement> searchResultList = (IList<IWebElement>)hybirdDriver.FindElementsByXPath("//div[@class=\"friend-information auto-truncate ng-binding\"]");
                string searchedPerson1 = searchResultList[0].Text;

                if (searchedPerson1 != "jack1 rose1")
                {
                    Console.WriteLine("Test Case3 failed");
                }
                else
                {
                    Console.WriteLine("Test Case3 pass");
                }

                //#######Test Case4

                //Check the search result of "rose"
                search.Clear();
                search.SendKeys("rose");

                //Wait for 1 second for the search result
                System.Threading.Thread.Sleep(1000);

                try
                {
                    IList<IWebElement> searchResultList2 = (IList<IWebElement>)hybirdDriver.FindElementsByXPath("//div[@class=\"friend-information auto-truncate ng-binding\"]");
                    //IWebElement searchResult_2 = (IWebElement)hybirdDriver.FindElementByXPath("//div[@class=\"search-results\"]/div[3]//div[@class=\"friend-information auto-truncate ng-binding\"]");
                    string searchedPerson2 = searchResultList2[1].Text;

                    if (searchedPerson2 != "jack1 rose1")
                    {
                        Console.WriteLine("Test Case4 failed");
                    }
                    else
                    {
                        Console.WriteLine("Test Case4 pass");
                    }
                }
                catch(Exception ex)
                {
                    Console.WriteLine("Element can not be located!, information is:");
                    Console.WriteLine(ex.Message);
                    Console.WriteLine("Test Case4 failed");
                }

                hybirdDriver.Context = driverContexts.First();

                hybirdDriver.Dispose();
            }
            #endregion

            Console.ReadKey();
        }
开发者ID:TylerTan,项目名称:Appium-Demo,代码行数:101,代码来源:Program.cs


注:本文中的OpenQA.Selenium.Appium.Android.AndroidDriver.FindElementByXPath方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。