Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.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
Php单元测试从命令传递配置文件_Php_Unit Testing_Integration Testing - Fatal编程技术网

Php单元测试从命令传递配置文件

Php单元测试从命令传递配置文件,php,unit-testing,integration-testing,Php,Unit Testing,Integration Testing,我正在使用单元测试实现一些集成测试。我正在使用setUp()方法设置配置文件。我的配置文件包含一些Api密钥Api密钥等。这工作正常 public function setUp() { $this->_pipeline = new Pipline($this); $this->_pipeline->setConfig(\Api\Models\ConfigModel::createFromFile(__DIR__ . '/test/integration/asse

我正在使用单元测试实现一些集成测试。我正在使用
setUp()
方法设置配置文件。我的配置文件包含一些
Api密钥
Api密钥
等。这工作正常

public function setUp()
{
    $this->_pipeline = new Pipline($this);
    $this->_pipeline->setConfig(\Api\Models\ConfigModel::createFromFile(__DIR__ . '/test/integration/assets/config'));
    $users = $this->_pipeline->users->listUsers();
    $this->_userId = $users->result->data[0]->user_id;

    parent::setUp(); 
}
这种方法在这种情况下效果很好

问题 但我想通过命令传递配置文件。目前我正在使用这个命令

php./vendor/phpunit/phpunit/phpunit-c./test/integration/phpunit.xml

有没有什么方法可以让我通过这样的命令来传递

php./vendor/phpunit/phpunit/phpunit-c./test/integration/phpunit.xml -c2/测试/集成/资产/配置


提前感谢。

您可以将名称作为参数传递给php:

php ./vendor/phpunit/phpunit/phpunit -c ./test/integration/phpunit.xml -- /test/integration/assets/config
您可以通过和访问参数
$argv[0]
是脚本的名称,因此您的配置文件名将位于
$argv[1]

e、 g


您可以从定义的env变量中获取它,也可以在phpunit.xml(
)中设置这些变量
E:\>php -r "echo \"$argc\n\"; print_r($argv);" -- "hello world!"
2
Array
(
    [0] => -
    [1] => hello world!
)