Laravel 如何测试配置文件更改?
我编写了一个函数,它使用文件内容更改config/app.php中的值Laravel 如何测试配置文件更改?,laravel,phpunit,Laravel,Phpunit,我编写了一个函数,它使用文件内容更改config/app.php中的值 public function updateConfig($path, $key, $value) { $content = file_get_contents($path); $pattern = "/'" . $key . "' => '[0-9]+'/"; $replacement = "'"
public function updateConfig($path, $key, $value)
{
$content = file_get_contents($path);
$pattern = "/'" . $key . "' => '[0-9]+'/";
$replacement = "'" . $key . "' => '" . $value . "'";
$content = preg_replace($pattern, $replacement, $content);
file_put_contents($path, $content);
}
如何通过更改配置文件来测试它?我想您应该先更改配置,然后再使用它。 有一种方法可以实现这一点,而无需编辑配置文件。请注意,为了加快Laravel的速度,配置是缓存的,您需要运行
php artisan clear:cache
或手动删除缓存文件
如果您想动态更改配置。如图所示进行更改,然后再使用
Config::set('app.version\u number',10)代码>我想在新版本发布时更新配置一次,然后使用它,例如用于bugsnag
$path = base_path() . '/config/app.php';
$key = 'version_number';
$value = '10';
$service->updateConfig($path, $key, $value);
$this->assertEquals(config('app.version_number'), $value);