Tôi đang thử một đối tượng trả về một cá thể của một lớp khác. Bên trong, lớp đó gọi require_once
. Tuy nhiên, khi tôi cố gắng để kiểm tra xem các đối tượng quay trở lại là loại tôi nhận được tin nhắn này:PHPUnit buộc tôi phải yêu cầu các lớp trước khi khẳng định ví dụ của
InvalidArgumentException: Argument #1 of PHPUnit_Framework_Assert::assertInstanceOf() must be a class or interface name
Thông báo này sẽ biến mất khi tôi gọi require_once
một lần nữa trong thử nghiệm của tôi trước khi cuộc gọi đến assertInstanceOf
. Điều này có vẻ không đúng. Có vẻ như PHPUnit nên đủ thông minh để biết rằng lớp đã được tải, vì vậy tôi không nên tải lại nó. Tôi có nghĩ về điều này không? Tôi có cấu hình PHPUnit sai? Có cách nào để tránh yêu cầu lớp này một lần nữa trong bài kiểm tra của tôi không?
là 'cái require_once' cần thiết trong lớp học riêng của mình, hoặc trong lớp tập tin, bên ngoài lớp nhưng nạp khi lớp tập tin được nạp? – Malovich
'assertInstanceOf ('MyClass')' NOT 'assertInstanceOf (new MyClass)'. Hãy chắc chắn rằng bạn đang đi qua một chuỗi và không phải là một thể hiện của lớp. –
Tôi đã vượt qua một chuỗi – Andrew