TestNG Ожидается прохождение теста для исключений, несмотря на отсутствие исключения в вызываемом коде - PullRequest
0 голосов
/ 21 февраля 2019

У меня странная ситуация с TestNG, и я надеюсь, что кто-то может помочь.

Я пытаюсь проверить исключение IllegalArgumentException, по сути, пытаюсь заблокировать все вредоносные программы, которые могут закончиться передачей в установщик в модели.Тест, который я комментировал с ожидаемым исключением, компилируется и работает нормально, но он проходит, несмотря на то, что я не выбрасываю исключение IllegalArgumentException в коде, и я затрудняюсь понять, почему.

public class CarTest extends ModelTest {

@Test(expectedExceptions = InvalidArgumentException.class)
public void willThrowInvalidArgumentExceptionWhenSettingEngineToNull() throws InvalidArgumentException{
    Car car = new Car();
    car.setEngine(null);
}

}

Это проходит, несмотря на отсутствие исключений.

Модель, которую я использую, является базовой моделью, поэтому у меня уже есть открытый установщик для этого свойства.

Я изменил названия моделей, но этоне должно иметь никакого значения в этом случае.

Заранее благодарим за мудрость

Ответы [ 2 ]

0 голосов
/ 22 февраля 2019

Я исправил это, удалив папку .idea в IntelliJ и повторно импортировав свой проект, используя мой файл pom.xml. Я могу только предположить, что TestNG не был извлечен должным образом, и поэтому ожидаемые исключения не были полностью распознаны.

0 голосов
/ 21 февраля 2019

Мне кажется, что car.setEngine(null); создает исключение.Удалите строку, и тест должен завершиться неудачей или отправить правильный аргумент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...