如何使用TestNG测试expectedExceptionsMessageRegExp(异常消息)?

时间:2010-04-14 15:25:39

标签: java unit-testing testing testng

我在expectedExceptionsMessageRegExp注释上使用@Test属性来测试异常消息,但它没有正确执行。请参阅下面的代码。

单元测试代码:

@Test (dependsOnMethods = "test1", expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = "incorrect argument")
public void testConverter()
{
    try
    {
        currencyConverter  = Converter.convert(val1,val2)
    }
    catch (MYException e)
    {
        e.printStackTrace();
    }
}

申请代码:

if (val1 == null || val1.length() == 0)
{
    throw new IllegalArgumentException("Val1 is incorrect");
}

单元测试代码应检查异常消息,如果消息彼此不匹配,则测试应该失败。

目前尚未发生这种情况。我做错了吗?

1 个答案:

答案 0 :(得分:5)

这似乎对我有用:

  

org.testng.TestException:   抛出了错误消息:预期“错误的参数”但得到“val1不正确”

你能发一个显示问题的简单课程吗? (在这里或在testng-users邮件列表上)