Php 单元测试在这里适用吗?
上面的示例代码是用php编写的,并在表COVER\u PHOTO中添加了简单的记录 记录:“picId”对应于由“loggedInId”标识的loggedin用户 我想知道我应该在这个函数的单元测试中写些什么。 或者对于这样的函数,我们不应该编写单元测试 请建议?首先,如果您的/正在使用任何基础设施方面的问题-在您的情况下是数据库-这往往是一个问题 单元测试是在完全隔离的情况下进行的,所有可能的依赖项都被模拟/剔除 我在代码中看到的第一个问题是Php 单元测试在这里适用吗?,php,unit-testing,phpunit,php-5.4,Php,Unit Testing,Phpunit,Php 5.4,上面的示例代码是用php编写的,并在表COVER\u PHOTO中添加了简单的记录 记录:“picId”对应于由“loggedInId”标识的loggedin用户 我想知道我应该在这个函数的单元测试中写些什么。 或者对于这样的函数,我们不应该编写单元测试 请建议?首先,如果您的/正在使用任何基础设施方面的问题-在您的情况下是数据库-这往往是一个问题 单元测试是在完全隔离的情况下进行的,所有可能的依赖项都被模拟/剔除 我在代码中看到的第一个问题是new()。这样,您就无法真正轻松地测试代码 我建议
new()。这样,您就无法真正轻松地测试代码
我建议您最好在类的后面有一个接口,它可以接收该接口的具体实现。完成后,您可以在测试中输出数据库部分。然而,通过查看您在问题中共享的代码,我并不确定您将在这里测试什么行为
始终确保您想要测试什么,在这种情况下,比如持久性规范或映射配置(当然,在您使用某种类型的an的情况下)。仅仅检查持久性操作的返回值(即成功或失败标志)并不会增加多少业务价值来进行测试
public function addPic($loggedInId,$PicId){
$chatCoverPhotoObj = new COVER_PHOTO();
$out = $chatCoverPhotoObj->add($loggedInId,$PicId);
if($out)
return true;
return false;
}