我有一个简单的类内方法,它执行以下操作:
我希望创建用于getLocalSettings的单元测试。我意识到这有点像依赖注入,但我无法理解应该如何编写测试。似乎这是一段非常琐碎的代码块,并且过度复杂化了测试,但我在这里有重新构建的自由,想要用我的值/数据提供者替换'local.php'以进行测试。 为了更好的阐明/评论: 我在这里使用配置文件作为示例,但实际上我们正在使用一个从数据库输出并包含为数据源的巨大文件,并在此函数中进行解析。我写了一个简化版本,避免使问题变得过于复杂,但所包含的数组有几个MB,并不仅仅是一个配置文件。不幸的是,提供不同方式处理文件配置的解决方案并不会有所帮助,但注入该数组的方法完全可以(但是在某些时候我需要运行那个“require”)。
谢谢。
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'以进行测试。 为了更好的阐明/评论: 我在这里使用配置文件作为示例,但实际上我们正在使用一个从数据库输出并包含为数据源的巨大文件,并在此函数中进行解析。我写了一个简化版本,避免使问题变得过于复杂,但所包含的数组有几个MB,并不仅仅是一个配置文件。不幸的是,提供不同方式处理文件配置的解决方案并不会有所帮助,但注入该数组的方法完全可以(但是在某些时候我需要运行那个“require”)。
谢谢。