用 phpunit 测试树枝

问题描述 投票:0回答:1

我想用 Twig 和 PHPUnit 实现一些单元测试(两者都与 Composer 一起安装,并添加了 slim/views)。但是当我尝试测试模板生成时,它会在 {{ baseUrl() }} 处阻塞。但是当我在导航器上测试模板时,没有 phpunit,模板工作正常。

这是错误消息:

Twig_Error_Runtime: An exception has been thrown during the rendering of a template 
("Undefined index: REQUEST_METHOD") in "application/General.twig" at line 21.
php unit-testing twig phpunit slim
1个回答
1
投票

正如本文所述,为 slim 框架编写测试用例并不是那么容易。您可以如下模拟 SLIM 环境:

// Prepare a mock environment
        Environment::mock(array_merge(array(
            'REQUEST_METHOD' => $method,
            'PATH_INFO' => $path,
            'SERVER_NAME' => 'slim-test.dev',
        ), $options));
        $app = new \Slim\Slim();
        $this->app = $app;
        $this->request = $app->request();
        $this->response = $app->response();

完整代码示例在这个要点

希望这有帮助

© www.soinside.com 2019 - 2024. All rights reserved.