Phpunit 灯塔自动模型检测不需要';不能使用单元测试

Phpunit 灯塔自动模型检测不需要';不能使用单元测试,phpunit,graphql,laravel-lighthouse,Phpunit,Graphql,Laravel Lighthouse,我似乎面临着一个普遍的问题,即指令驱动的突变在单元测试时无法正常工作。使用GraphQL,一切正常,用户模型自动检测。但是,如果单元测试相同的功能,它就会失败 所有配置值都已正确设置(正如我从未失败的常规请求中看到的): lighthouse配置值也设置为上面的名称空间 例如,这个变异会触发UserPolicy类,然后自动调用User类的create方法: type Mutation @protect(guards: ["api"]) { "Create user" createUser

我似乎面临着一个普遍的问题,即指令驱动的突变在单元测试时无法正常工作。使用GraphQL,一切正常,用户模型自动检测。但是,如果单元测试相同的功能,它就会失败

所有配置值都已正确设置(正如我从未失败的常规请求中看到的):

lighthouse配置值也设置为上面的名称空间

例如,这个变异会触发
UserPolicy
类,然后自动调用
User
类的create方法:

type Mutation @protect(guards: ["api"]) {
  "Create user"
  createUser(data: NewUserInput! @spread): User
  @can(ability: "create")
  @create 
}
但是通过phpunit调用相同的请求将导致错误: 对于
@can
,它返回一个未授权错误,如果我删除
@can
,它只会更新用户模型的电子邮件字段,就好像未正确设置批量分配一样

当我现在将上述模式定义更改为:

type Mutation @protect(guards: ["api"]) {
  "Create user"
  createUser(data: NewUserInput! @spread): User
  @can(ability: "create" model: "ClientName\\PackageName\\Models\\User")
  @create(model: "ClientName\\PackageName\\Models\\User") 
}
在phpunit测试中,它可以像预期的那样工作

现在,我怀疑在测试中没有找到用户模型或者没有找到合适的模型,但我无法理解为什么会这样

有人知道吗

type Mutation @protect(guards: ["api"]) {
  "Create user"
  createUser(data: NewUserInput! @spread): User
  @can(ability: "create" model: "ClientName\\PackageName\\Models\\User")
  @create(model: "ClientName\\PackageName\\Models\\User") 
}