找不到Yii2 codeception数据文件装置
我试图运行简单的测试,并通过fixture数据文件在数据库中插入两条记录。 我得到的是:找不到Yii2 codeception数据文件装置,yii2,codeception,Yii2,Codeception,我试图运行简单的测试,并通过fixture数据文件在数据库中插入两条记录。 我得到的是: [ReflectionException] Class C:\xampp\htdocs\codeception\frontend\tests/_data\user.php does not exist 文件显然在那里。My UserTest.php如下所示: <?php class UserTest extends \Codeception\Test\Unit { public funct
[ReflectionException] Class C:\xampp\htdocs\codeception\frontend\tests/_data\user.php does not exist
文件显然在那里。My UserTest.php如下所示:
<?php
class UserTest extends \Codeception\Test\Unit
{
public function _fixtures()
{
return [
'class' => \frontend\tests\fixtures\UserFixture::className(),
'dataFile' => codecept_data_dir() . 'user.php'
];
}
public function testValidation()
{
$user = new \common\models\User();
$user->setUsername(null);
$this->assertFalse($user->validate(['username']));
$user->setUsername('aaaaaaaaaaaaaaaaaaaaaaaaaa');
$this->assertFalse($user->validate(['username']));
$user->setUsername('toma');
$this->assertTrue($user->validate(['username']));
}
public function testIfUserExist()
{
$this->tester->seeRecord('user', ['name' => 'Toma']);
}
}
$this->tester->seeRecord(\frontend\models\User::class, ['name' => 'Toma']);
我在错误中看到了类似linux的正斜杠,但不知道如何更改它。不确定这是否是问题所在,因为我在一些图像上有相同的路径,当时还可以。这是什么原因造成的?谢谢大家! 你用错了。第一个参数需要按类名(包括名称空间)排序,所以您应该像这样使用它:
<?php
class UserTest extends \Codeception\Test\Unit
{
public function _fixtures()
{
return [
'class' => \frontend\tests\fixtures\UserFixture::className(),
'dataFile' => codecept_data_dir() . 'user.php'
];
}
public function testValidation()
{
$user = new \common\models\User();
$user->setUsername(null);
$this->assertFalse($user->validate(['username']));
$user->setUsername('aaaaaaaaaaaaaaaaaaaaaaaaaa');
$this->assertFalse($user->validate(['username']));
$user->setUsername('toma');
$this->assertTrue($user->validate(['username']));
}
public function testIfUserExist()
{
$this->tester->seeRecord('user', ['name' => 'Toma']);
}
}
$this->tester->seeRecord(\frontend\models\User::class, ['name' => 'Toma']);
哦非常感谢。我想我没有读对:如果这是全部问题,我会稍后再试,并会给出反馈。