当前在我的Windows计算机上运行带codeception的phpunit时出错:
[phpunit_framework_例外]
未定义常数sigterm的使用-
假设“sigterm”
据我所知,SIGTERM
是由PCNTL提供的常量,这在windows中是不受支持的。这样,这个常量就不应该用于在windows env上运行的测试。完全。
我的php设置:
PHP 5.6.17 (cli) (built: Jan 6 2016 13:28:38)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
普普尼特
PHPUnit 5.7.15
共同认知
Codeception PHP Testing Framework v2.2.9
phiremock-codeception-extension
phiremock-codeception-extension v1.2.2
最佳答案
问题取决于使用phiremock-codeception-extension
而不检查os/pcntl扩展是否可用的SIGTERM
。所以我在github创建了一个bug报告。
这是受感染的代码行-https://github.com/mcustiel/phiremock-codeception-extension/issues/4
/**
* Stops the process.
*/
public function stop()
{
$this->process->signal(SIGTERM);
$this->process->stop(3, SIGKILL);
}
一旦开发人员解决了问题,我将更新此答案。
更新
此问题已在https://github.com/mcustiel/phiremock-codeception-extension/blob/master/src/Extension/PhiremockProcess.php#L74中修复。
关于php - 使用未定义的常量SIGTERM->假定为'SIGTERM',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42575136/