我在一个类中有一个简单的方法,它执行以下操作
class ToBeTested
{
public function getLocalSettings()
{
require_once 'local.php';
return (isset($configSetting['foo'])) ? true : false;
}
}
在 local.php 中
<?
$configSetting = array(
'foo' => '1',
'bar' => 'false',
);
我正在寻找为 getLocalSettings 创建单元测试。我意识到这有点像依赖注入,但我不能完全理解我应该如何编写测试。测试变得过于复杂似乎是一个非常简单的代码块,但我可以自由地在这里重构,我想用我自己的值/数据提供者替换“local.php”以进行测试
编辑清晰度/评论
我在这里使用了一个配置作为示例,但我们实际使用的是一个巨大的文件,该文件从数据库输出并作为数据源包含在内,并在此函数中进行解析。我编写了它的简化版本以避免问题过于复杂,但包含的数组是几个兆,而不是实际上“只是一个配置文件”。不幸的是,在处理文件配置时提供不同方法的解决方案没有帮助,但是注入这个数组的方法可以正常工作(但在某些时候我需要运行那个'require'。
谢谢