我是 Codeception 的新手,尝试在 Laravel 框架中运行示例单元测试,但出现以下错误:
[RuntimeException] Call to undefined method UnitTester::haveRecord
我尝试使用 Codeception 运行以下代码:
<?php namespace Article;
use App\Article;
use Faker\Factory as Faker;
use Carbon\Carbon;
class SaveTest extends \Codeception\Test\Unit
{
/**
* @var \UnitTester
*/
protected $tester;
protected function _before()
{
}
protected function _after()
{
}
// tests
public function testSomeFeature()
{
$faker= Faker::create('App/Article');
$title = $faker->sentence;
$content = implode($faker->paragraphs(5));
$created_at = Carbon::now();
$updated_at = Carbon::now();
$this->tester->haveRecord( 'Article', ['title' => $title, 'content' => $content,'created_at' => $created_at,'updated_at' => $updated_at]);
$this->tester->seeRecord('articles',['title' => $title,'content' => $content,'created_at' => $created_at,'updated_at' => $updated_at]);
}
}
请帮我解决这个错误吗?提前致谢。
最佳答案
在unit.suite.yml中启用Laravel5模块后问题得到解决
Laravel5 模块的unit.suite.yml 文件格式:
actor: UnitTester
modules:
enabled:
- Asserts
- Laravel5:
part: ORM
- \Helper\Unit
关于php - Codeception 单元测试 [RuntimeException] 调用未定义的方法 UnitTester::haveRecord,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54288920/