Ответ 1
http://apigen.juzna.cz/doc/sebastianbergmann/phpunit/function-assertInstanceOf.html
Я думаю, что вы неправильно используете эту функцию. Попробуйте:
$this->assertInstanceOf('User', $user);
Мне нужно проверить, является ли переменная объектом типа пользователя.
Пользователь мой класс $user
мой объект
$this->assertInstanceOf($user,User);
Это не работает, я использую undefined константу Пользователь - предполагаемый "Пользователь"
Заранее благодарим за помощь
http://apigen.juzna.cz/doc/sebastianbergmann/phpunit/function-assertInstanceOf.html
Я думаю, что вы неправильно используете эту функцию. Попробуйте:
$this->assertInstanceOf('User', $user);
Или Вы можете использовать что-то вроде:
$this->assertInstanceOf(get_class($expectedObject), $user);
Я обычно использую это, когда проверяю, если метод setter возвращает ссылку на self.
$testedObj = new ObjectToTest();
$this->assertInstanceOf(
get_class($testedObj),
$testedObj->setSomething('someValue'),
'Setter is not returning $this reference'
);
Всегда полезно использовать ::class
везде, где вы можете. Если вы привыкнете к этому стандарту, вам не нужно использовать FQCN (полностью квалифицированные имена классов) или избежать обратных косых черт. Кроме того, IDE обеспечивают лучшую функциональность, если они знают, что User
здесь не просто строка, а класс.
$this->assertInstanceOf(User::class, $user);