想要断言文本字段

时间:2016-03-15 13:10:20

标签: java selenium selenium-webdriver testng

我想断言出现在文本字段中的值。文本字段的id是blNo。我无法使用正确的断言。请查看一些建议。

3 个答案:

答案 0 :(得分:0)

您可以使用assertTrue

String text = driver.findElement(By.id("blNo")).getText();
assertTrue("The text doesn't contains the value", text.contains("value"));

如果assert失败,将显示该消息。

答案 1 :(得分:0)

我正在使用Testng和Selenium。我也遇到了实现Selenium断言的问题,所以这就是我创建的。欢迎提供建设性的反馈意见。

通过getText()针对您的WebElement对象检索文本。

WebElement object = driver.findElement(By.id("blNo"));
String text = object.getText();

然后将WebElement对象发送到类似下面AreEqual方法的方法。

public class Assert 
{ 

    public static void AreEqual(String comparethis, String tothis, String falseMsg)
    {

        try
        {
            Log.Info("Compare this object: " + comparethis);
            Log.Info("     to this object: " + tothis);
            if(comparethis.equals(tothis))
            {
                Log.Info(comparethis + " is equal to " + tothis);
            }
            else
            {
                Log.Info(comparethis + " is not equal to " + tothis);
                Fail();
            }
        }

        catch(Exception e)
        {
            Log.Error("[EXCEPTION CAUGHT] : Assert.AreEqual() | " + falseMsg + "  | Exception: " + e);
            throw(e);
        }

    }// AreEqual method

}// Assert Class

失败方法

public static void Fail()
{
    org.testng.Assert.fail("[TEST FAILED]");
    Log.Error("[TEST FAILED] : Assert.Fail()");
}

...

答案 2 :(得分:0)

您可以使用以下代码

Assert.assertEquals("Expected Text",driver.findElement(By.id("blNo")).getText());