PHPUnit Skeleton Generator无法创建文件

时间:2014-06-27 15:17:26

标签: netbeans phpunit

我已经通过Composer安装了最新版本的PHPUnit和Skeleton Generator,4.1.3和2.0.1。我已将它安装到我的项目目录中并确认我可以测试所有文件。但是,我不能运行骨架生成器来创建新的测试。我正在使用Netbeans及其PHPUnit集成来创建测试。当我尝试生成测试时,我得到以下内容:

"C:\xampp\php\php.exe" "C:\Users\Bob\Projects\[myProject]\website\vendor\phpunit\phpunit-skeleton-generator\phpunit-skelgen" "--test" "--" "Security\SecureAPI" "C:\Users\Bob\Projects\[myProject]\website\src\Security\SecureAPI.php" "Security\SecureAPITest" "C:\Users\Bob\Projects\[myProject]\website\test\phpunit\src\Security\SecureAPITest.php"
phpunit-skelgen 2.0.1 by Sebastian Bergmann.


[InvalidArgumentException]                    
Command "Security\SecureAPI" is not defined.                                             

Done.

在此之前我选择了Netbeans的“使用引导程序创建新单元测试”选项,并出现此错误:

"C:\xampp\php\php.exe" "C:\Users\Bob\Projects\[myProject]\website\vendor\phpunit\phpunit-skeleton-generator\phpunit-skelgen" "--bootstrap" "C:\Users\Bob\Projects\[myProject]\website\test\phpunit\bootstrap.php" "--test" ...

[InvalidArgumentException]                       
There are no commands defined in the "C" namespace.

使用1.2.1版生成测试在我的旧开发机器上运行良好。我想知道问题是否特定于skelgen的2.0.1版本。它似乎将C:视为命名空间,而1.2.1则没有。我已经确认Netbeans为1.2.1和2.0.1生成了相同的命令行指令,因此它们的解释方式似乎发生了变化。

有没有人见过这个?有任何想法吗?我正在使用Netbeans 8.0运行Win7机器。提前谢谢。

1 个答案:

答案 0 :(得分:3)

尝试从here下载开发版的NetBeans,几天前修复了Skeleton Generator 2.x中的更改问题