PHPUnit: assertInstanceOf () не работает

Мне нужно проверить, является ли переменная объектом типа пользователя. Пользователь мой класс $user мой объект

 $this->assertInstanceOf($user,User); 

Это не работает, я использую неопределенный постоянный пользовательский «Пользователь»,

Заранее спасибо за вашу помощь

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);