Laravel 用数据库检测拉威尔灯塔突变

Laravel 用数据库检测拉威尔灯塔突变,laravel,phpunit,laravel-lighthouse,laravel-testing,Laravel,Phpunit,Laravel Lighthouse,Laravel Testing,我试图在测试中使用数据库和laravel lighthouse。我正在使用这些特性进行GraphQL和数据库测试,变异可以工作,但测试不能 类MyTest扩展了TestCase{ 使用makesgraphql请求; 使用数据库; 公共函数testGraphQLDatabaseTest(){ $this->graphQL(/**@lang graphQL*/' 创建帖子($title:String!){ createPost(标题:$title){ 身份证件 } } “,[“标题”=>“测试标题]

我试图在测试中使用数据库和laravel lighthouse。我正在使用这些特性进行GraphQL和数据库测试,变异可以工作,但测试不能

类MyTest扩展了TestCase{
使用makesgraphql请求;
使用数据库;
公共函数testGraphQLDatabaseTest(){
$this->graphQL(/**@lang graphQL*/'
创建帖子($title:String!){
createPost(标题:$title){
身份证件
}
}
“,[“标题”=>“测试标题]);
$this->assertDatabaseHas('posts'[
“标题”=>“测试标题”,
]);//它表示expect表posts的标题为“=>”test title“,但“posts”表为空
}
}

我在突变中有一些外观,在这种情况下,我只需添加外观假或存根来解决问题

//示例
//在测试开始时
公共函数testGraphQLDatabaseTest(){
邮件::假();
//...
}

您正在使用哪个数据库驱动程序?SQLite3:内存:

另一种检查方法是使用实体本身。例如:

$this->assertEquals('testtitle',Post::find(1)->title)


至少你可以试一试。如果这也不起作用,我会尝试先用Post::create(…)创建条目。如果这样做有效,那就是您的解析器有问题。也许您还可以显示要使用的相应GraphQL模式。

这是邮件外观上的一个故障,我在测试sqllite时使用了它。