С PHPUnit и PHP> = 5.3 можно проверить защищенные методы. На следующей странице в stackoverflow описывается наилучшая практика: «Рекомендации по проверке защищенных методов с помощью PHPUnit» protected static function callProtectedMethod($name, $classname, $params) { $class = new ReflectionClass($classname); $method = $class->getMethod($name); $method->setAccessible(true); $obj = new $classname($params); return $method->invokeArgs($obj, $params); } Для тестирования открытых методов в абстрактных […]
Я только начинаю с OOP PHP с объектно-ориентированными решениями PHP Дэвидом Пауэрсом, и мне немного любопытно понятие защиты в ООП. Автор ясно объясняет, как работает защита, но бит о том, что другие люди не могут изменять свойства, немного плоский. Мне трудно представить себе ситуацию, когда это возможно, чтобы другие люди не могли изменять ваши классы, […]