Как протестировать expectExceptionsMessageRegExp (сообщение об исключении) с помощью 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");
}

Код модульного теста должен проверять сообщение об исключении, если сообщения не совпадают друг с другом, тест должен завершиться неудачно.

В настоящее время этого не происходит. Я делаю что-то неправильно?


person Tony    schedule 14.04.2010    source источник


Ответы (1)


Кажется, это работает для меня:

org.testng.TestException: исключение было выдано с неправильным сообщением: ожидался «неверный аргумент», но получено «val1 неверно»

Можете ли вы опубликовать простой класс, показывающий проблему? (либо здесь, либо в списке рассылки testng-users)

person Cedric Beust    schedule 14.04.2010