使用Selenium和C#验证错误消息输出

时间:2017-01-24 21:09:54

标签: c# selenium automated-tests

我应该通过说我是Selenium / C#的新手和一般的自动化测试来作为序言。我试图编写一个测试用例来验证如果用户输入了错误的凭据(用户名/密码),系统将抛出一个错误,说明用户名或密码不正确。"

是否有人能够建议如何验证图片中突出显示的文字是否出现在网页上?

element inspection img

这是我到目前为止所做的:

[TestMethod]
    public void CoordinatorLogin_Failure()
    {
        var driver = new ChromeDriver();
        driver.Navigate().GoToUrl(url);
        driver.Manage().Window.Maximize();
        driver.FindElement(By.Name("user.userName")).SendKeys("someguy@gmail.com");
        driver.FindElement(By.Name("user.password")).SendKeys("WrongPassword");
        driver.FindElement(By.Name("user.password")).SendKeys(Keys.Enter);

        string actual_Result = driver.FindElements(By.CssSelector("#wrapper span.ng-binding ng-scope xh-highlight")).ToString();

        string expected_Result = "The UserName or Password is incorrect.";

        Assert.AreEqual(actual_Result, expected_Result);            
    }

1 个答案:

答案 0 :(得分:0)

您可能需要查看下面的字段,因为您在密码字段上单击“输入”。

driver.FindElement(By.Name("user.password")).SendKeys(Keys.Enter); 

当您在浏览器上查找字段时,您希望获得“文本”值。它看起来像:

 string actual_Result =   driver.FindElements(By.CssSelector("#wrapper span.ng-binding ng-scope xh-highlight")).Text;