【发布时间】:2015-04-27 03:58:06
【问题描述】:
这是我第一次进行单元测试,我想知道是否有一种方法可以从一个简单的类中测试以下方法。
我基本上需要检查命令是否包含通过方法传递的每个参数的某些参数。
就检查返回的控制台输出中的命令而言,由命令控制的外部工具没有返回任何有意义的东西。
我读到方法的主体是实现细节,因此它是不可测试的。如果这是真的,我假设我无法测试这样的方法?
方法示例
public function doSomething(array $params)
{
$command = ($this->x64 ? 'test_x64' : 'test_enc') . ' '
. $params['a'] . ' '
. $params['b'] . ' '
. $params['c'];
if (isset($params['d'])) {
$command .= ' -d=' . $params['d'];
}
if (isset($params['e'])) {
$command .= ' -e=' . $params['e'];
}
if (isset($params['f'])) {
$command .= ' -' . $params['f'] . 'bit';
}
return shell_exec($command);
}
【问题讨论】:
-
您是否可以检查
-d是否是命令行可执行文件的有效选项? -
@Devon 不。我在问我是否/如何对这个方法进行单元测试。
标签: php unit-testing phpunit