将显示断言消息的位置

时间:2013-07-31 12:56:18

标签: selenium-webdriver testng assert

我尝试了代码

package Base;

import org.testng.Assert;
import org.testng.annotations.Test;

public class Assertcheck 
{
    @Test
    public void check() {
        Assert.assertTrue(true, "testing the string true");
    }
}

并且代码成功但不显示消息“测试字符串为true”。我检查了控制台输出以及testNG结果。

3 个答案:

答案 0 :(得分:1)

有关详情,请参阅网站: http://junit.sourceforge.net/javadoc/org/junit/Assert.html#assertTrue(java.lang.String,布尔值)

public static void assertTrue(java.lang.String message, boolean condition)

断言条件为真。如果不是,它会抛出带有给定消息的AssertionError。 参数: message - AssertionError的标识消息(null okay)

condition - 要检查的条件

答案 1 :(得分:0)

仅为了您的信息,仅当Assert条件变为false时才会执行Message参数。该消息将显示在控制台中。

但是在Assert条件通过的情况下,消息部分将不会被执行,所以在这种情况下你不会看到任何消息。

如果要在两种情况下都看到消息,则应使用类似

的try-catch语句
try{
     Assert.assertTrue(true, "testing the string true");
     //print your message for the case assert pass and/or perform any other event
}catch (Exception e){
     //print your message for the case assert fails and/or perform any other event
     loggerObj.debug("Assert Failed "+e.getMessage());
}

答案 2 :(得分:-2)

像上面那样尝试,尝试并捕获语句,但是

由于它是Testng的类,因此必须反映您在testng日志中所做的评论, 检查底部的testng的“运行类的结果”选项卡 如果条件不成立,它将在那里。