gpt4 book ai didi

php - 如何在运行测试前启动 PHP 内置 Web 服务器并在测试运行后关闭它

转载 作者:可可西里 更新时间:2023-11-01 12:53:31 25 4
gpt4 key购买 nike

我正在尝试使用 Behat 进行 BDD 测试。在 Jenkins 上运行构建时,我希望 Behat 在 Web 服务器中打开 PHP 构建,然后在运行测试后将其关闭。如何做到这一点?

基本上我需要运行:

php -S localhost:8000

在我的 BDD 测试中,我尝试了:

/**
* @Given /^I call "([^"]*)" with email and password$/
*/
public function iCallWithPostData($uri)
{
echo exec('php -S localhost:8000');
$client = new Guzzle\Service\Client();
$request = $client->post('http://localhost:8000' . $uri, array(), '{"email":"a","password":"a"}')->send();
$this->response = $request->getBody(true);
}

但是当运行 Behat 时它卡住了,没有任何消息。

最佳答案

只需将服务器作为构建过程的一部分启动即可。创建一个 ant 任务,它将在 behat 运行之前启动服务器,并在 behat 完成后将其杀死。

我已经成功地使用这种方法来启动和停止 selenium 服务器。

关于php - 如何在运行测试前启动 PHP 内置 Web 服务器并在测试运行后关闭它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13072795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com