Абсолютно проще всего было бы в значительной степени то, что вы написали выше (хотя код на самом деле не действителен). Создайте исключение для утверждений, и у вас будет действительный способ модульного тестирования!
Теперь, я думаю, вы могли бы использовать что-то вроде phpunit weather или нет, вы используете какой-то собственный код, но я не буду торопиться с этим больше, чем сообщить вам.
Также:
!===
неверно, !==
будет правильнее!
Далее, я бы порекомендовал вам создать некоторый тип статических или глобальных методов для вашего assertions
вместо вышеупомянутого, чтобы вы могли легко повторно использовать код, генерирующий исключение, вместо того, чтобы писать одно и то же снова и снова :
// assert.php
class Assert {
public static function isEqual($a, $b) {
if ($a != $b) {
throw new MyAssertionException('Not equal!');
}
return true;
}
public static function isSame($a, $b) {
if ($a !== $b) {
throw new MyAssertionException('Not same!');
}
return true;
}
}
---
// test.php
include_once 'assert.php';
Assert::isEqual(1, 2);