Вы можете попытаться перехватить исключения, сосчитать их и не пройти тест, если число ожидаемых исключений не соответствует числу обнаруженных исключений.Из
Вы также можете получить сообщение об исключении, если вы его встретите, и проверить, правильно ли оно.
В коде:
public function testCantGetInvalidCampsite() {
$invalidIds = array(300000, "string");
$exceptionCount = 0;
foreach($invalidIds as $id) {
try {
$this->campsites->getCampsite($id); // will throw an exception
} catch (Exception $e)
$exceptionCount ++;
$this->assertEquals('my exception message', $e->getMessage());
}
}
// assert here that exception count is two
$this->assertEquals(2, $exceptionCount);
}
Более чистый путьПо моему мнению, сделать это было бы, добавив два TestCases ...
testCantGetInvalidCampSite_String()
testCantGetInvalidCampSite_InvalidId()
, чтобы вы сразу увидели, что не получается, если тест не пройден.