Netbeans 8在phpunit-skelgen语法上犯了错误

时间:2014-06-02 18:34:58

标签: php netbeans phpunit

我正在尝试使用Netbeans中的工具自动化我的PHPUnit测试。我无法运行phpunit-skelgen。这就是Netbeans试图执行的内容:

"/usr/bin/php" "/var/home/brod/vendor/bin/phpunit-skelgen" "--test" "--" "Calculator" "/var/home/brod/projeto/calculadora.php" "CalculatorTest" "/var/home/brod/projeto/testes/calculadoraTest.php"

如果我只是在命令行中将“--test”替换为“generate-test”,其余部分保持不变,则会创建我的测试:

"/usr/bin/php" "/var/home/brod/vendor/bin/phpunit-skelgen" "generate-test" "--" "Calculator" "/var/home/brod/projeto/calculadora.php" "CalculatorTest" "/var/home/brod/projeto/testes/calculadoraTest.php"

现在,是否有一种简单的方法可以告诉Netbeans使用正确的语法?

2 个答案:

答案 0 :(得分:1)

使用旧版本的phpunit或创建一个包装器并将其指向

phpunit-skelgen.sh:

#!/bin/sh
/location/to/your/phpunit-skelgen generate-test $4 $5 $6 $7 $8

命令行:

chmod +x phpunit-skelgen.sh

答案 1 :(得分:0)

这是包装器的PHP版本:

<?php

$phpunit_skelgen_path = 'C:\Users\YourUser\AppData\Roaming\Composer\vendor\phpunit\phpunit-skeleton-generator\phpunit-skelgen';

$php_path = 'C:\PHP\php.exe';

foreach ($argv as $i => $arg) {
    if ($arg === '--test') {
        $argv[$i] = 'generate-test';
    }
}

$arguments = implode(' ', array_slice($argv, 1));

system("$php_path $phpunit_skelgen_path $arguments");