Hello您好,我对PHPUnit和Laravel 4很新。 我创建了一个REST API,并且正在尝试使用laravel(PHPUnit)单元测试添加一个新用户,以我的测试数据库。问题是,它完全忽略了我试图添加用户文档创建的Object数组。使用MongoDB和对象数组进行Laravel单元测试
典型用户文件将如下所示:
{
_id": ObjectId("53021089b4d15220118b4568"),
"oArr": {
"something": {
"somewhere": "5th Avenue",
"ip": "192.168.0.20"
},
"something2": {
"somewhere": "6th Avenue",
"ip": "192.168.0.21"
}
}
"email": "[email protected]",
"name": "Jessica Alba",
"password": "$2y$10$RAVzUGLAG.81IOOUum0k0u5vrcY98H.L42FeSJekEywUCV.ycttn6"
}
现在Laravel有它自己的测试类TestCase
,你的单元测试扩展。 典型的例子是以下几点:
class AddUserTest extends TestCase {
/**
* A basic functional test example.
*
* @return void
*/
public function testCreateUsers()
{
$post_data = array(
'email' => '[email protected]',
'name' => 'Emma Watson',
'password' => 'password',
'oArr' => array(
'something' => array(
'somewhere' => '7th Avenue',
'ip' : => '192.168.0.31'
),
),
);
}
}
一旦用户测试已运行(成功),新的艾玛·沃特森的用户(蒙戈文件)如下所示:
{
_id": ObjectId("53021089b4d15220118b4568"),
"email": "[email protected]",
"name": "Emma Watson",
"password": "$2y$10$asdAzUGLAG.8asvWQOUum0k0u5vrcY98H.LEDeSJekEywUCV.ycttn6"
}
我不知道如何,并找不到其他人有同样的问题。
我的假设:我正在使用的ORM(https://github.com/jenssegers/Laravel-MongoDB)不适合单元测试中的对象数组。
我还没有看看ORM如何处理单元测试,我只是希望别人有同样的问题,并有一个更基本的解决方案。
哈希是由API框架(Laravel)在这种情况下完成的。 所有信息在投入Mongo之前已准备就绪并已格式化。 –