看起来我不了解PHPUnit的一些基本知识。我的问题:
在 AppServiceProvider.php
中class AppServiceProvider extends ServiceProvider{
public function boot() {
request()->country_id = 100;
}
}
在 IndexController.php
中public function index(Request $request) {
dd(request()->country_id);
}
例如,控制器,它可用于视图,控制器,无处不在......
框 ExampleTest.php
的基本测试<?php
use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;
class ExampleTest extends TestCase
{
public function testBasicExample()
{
$this->visit('/')
->see('Laravel 5');
}
}
在浏览器中,它将显示 100 ,当我在CLI中使用“phpunit tests / ExampleTest”时,它将返回 null 。为什么?
以这种方式使用request()是对的吗?因为每个国家/地区都有自己的域,而域(主机)是一个部分或请求。所以我决定让国家成为请求的一部分,这在我的逻辑中是有道理的。
答案 0 :(得分:0)
我找到了解决方案。这是我的错。它应该在 RouteServiceProvider 中,而不是 AppServiceProvider 。谢谢大家!