【问题标题】:How to get text from page? Selenium, C#如何从页面中获取文本?硒,C#
【发布时间】:2016-04-09 13:25:55
【问题描述】:
 [TestClass]
    public class UnitTest1
    {
        [TestMethod()]
        public void TestMethod1()
        {
            // Arrange
            String expected = "text";

            //a ACT
            IWebDriver driver = new FirefoxDriver();
            driver.Navigate().GoToUrl("https://accounts.google.com/ServiceLogin?service=mail&continue=https://mail.google.com/mail/&hl=pl#identifier");
            driver.Manage().Window.Maximize();

            IWebElement email = driver.FindElement(By.XPath("//*[@id='Email']"));
            email.Clear();
            email.SendKeys("myemail");

            IWebElement buttonElement = driver.FindElement(By.XPath("//*[@id='next']"));
            buttonElement.Click();

            var wait1 = new OpenQA.Selenium.Support.UI.WebDriverWait(driver, TimeSpan.FromSeconds(10));
            var password = wait1.Until(wd => wd.FindElement(By.XPath("//input[@id='Passwd']")));            
            password.Clear();
            password.SendKeys("mypassword");

            IWebElement login = driver.FindElement(By.XPath("//*[@id='signIn']"));
            login.Click();

            expected = driver.FindElement(By.ClassName("z0")).Text; //<-DOES'NT WORK


            // Assert
            Assert.IsTrue(expected.Contains("text"));

        }
    }

你好。我进行了测试以登录gmail。但我想在登录后在此页面上查找文本,并在测试结束时将其置于“断言”状态。 你能帮我吗,怎么做?

【问题讨论】:

    标签: c# selenium webdriver automated-tests


    【解决方案1】:

    你需要等待元素出现

    var expected = wait1.Until(wd => wd.FindElement(By.ClassName("z0"))).Text;  
    

    【讨论】:

      猜你喜欢
      • 2016-12-28
      • 1970-01-01
      • 2012-03-14
      • 2016-12-18
      • 1970-01-01
      • 2015-07-11
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      相关资源
      最近更新 更多