Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHPUnit和扩展类_Php_Netbeans_Phpunit - Fatal编程技术网

PHPUnit和扩展类

PHPUnit和扩展类,php,netbeans,phpunit,Php,Netbeans,Phpunit,我很好奇,我有一个基类-base和一个控制器类-controller,显然您无法在netbeans中测试控制器,因为它找不到基类 class Controller extends Base{} class Base{} netbeans将为基础生成测试,但不会为控制器生成测试。这是因为A)每个测试都必须扩展PHP单元,B)如果您在Base中测试逻辑,并且所有测试都通过了,那么可以安全地假设控制器也会通过吗?-看起来很不可信 在这种情况下该怎么办?您必须包含该文件,或者可以使用自动加载(检查co

我很好奇,我有一个基类-
base
和一个控制器类-
controller
,显然您无法在netbeans中测试控制器,因为它找不到基类

class Controller extends Base{}
class Base{}
netbeans将为基础生成测试,但不会为控制器生成测试。这是因为A)每个测试都必须扩展PHP单元,B)如果您在Base中测试逻辑,并且所有测试都通过了,那么可以安全地假设控制器也会通过吗?-看起来很不可信


在这种情况下该怎么办?

您必须包含该文件,或者可以使用自动加载(检查composer.PSR-0或classmap的自动加载)。
最好使用phpunit.xml通过自动加载或引导进行自动测试。(无需在测试文件中包含将要测试的所有文件)。

您还应该在自己的文件中包含每个类,然后分别测试每个类。较小的对象将有助于保持逻辑分离,并使测试更容易。是的,这是之后的第一步,将使用phpunit.xml、autoload和名称空间进行自动测试。