1
我有以下的方法我想测试:对数据库内容测试方法没有输出
class SomeObject {
public function actionFromSomeController() {
$obj = new OtherObject();
$obj -> setAttributes();
$obj -> doAction();
}
}
class OtherObject {
private $_attr;
public function setAttributes() {
$this -> _attr = 'something';
Database :: execute('INSERT INTO table VALUES (' . $this -> _attr . ')');
$fileObj = new FileObj();
$content = $fileObj -> getSomeFileContent();
// do something else
}
public function doAction() {
echo $this -> _attr;
}
}
现在我想测试这种方法,它的输出取决于和服务器上的一个文件。它在途中做了很多事情,输出只是一个ID和success => 1
。
我应该如何正确测试它?
可能会创建一个手动示例数据,格式为您希望从数据库或文件中获得的格式... – Webinan
您当前的体系结构使测试变得困难。如果你设置了一个测试,你可以测试返回值(在这种情况下是一个数组) –
嘿@Janusz Kowalski - 只是想知道其中一条评论或我的回答对你有帮助吗?您需要有关此问题或类似问题的进一步帮助? –