无法使用assertSet测试laravel livewire模型隐藏属性

无法使用assertSet测试laravel livewire模型隐藏属性,laravel,testing,hidden,laravel-livewire,laravel-models,Laravel,Testing,Hidden,Laravel Livewire,Laravel Models,我有一个简单的LIvewire组件,它由一个表单组成,用于创建一个新用户,而且它可以工作,因为有人要求我在项目已经进入阶段后编写测试 Livewire组件使用新用户实例(不存在,即用户->存在为假)存储插入的数据,然后再将其持久化,用户模型通过受保护的$hidden数组隐藏密码属性 现在,我可以在本地环境中通过表单页面成功地创建新用户,但是当涉及到测试时,它会给我带来错误 测试 错误 我发现了什么 通过表单页面设置我的Component用户实例很好,因为livewire将其识别为模型,因此可以执

我有一个简单的LIvewire组件,它由一个表单组成,用于创建一个新用户,而且它可以工作,因为有人要求我在项目已经进入阶段后编写测试

Livewire组件使用
新用户
实例(不存在,即
用户->存在
)存储插入的数据,然后再将其持久化,
用户
模型通过受保护的
$hidden
数组隐藏密码属性

现在,我可以在本地环境中通过表单页面成功地创建新用户,但是当涉及到测试时,它会给我带来错误

测试 错误 我发现了什么 通过表单页面设置我的Component用户实例很好,因为livewire将其识别为
模型
,因此可以执行类似
user->password='password'
,而在使用
set()
进行测试时,它会使用access操作符访问其属性,因为它是一个数组,即:
user['password]=“密码”

注释掉
$hidden
数组中的密码条目使测试通过。 这将解释属性设置中的差异

结论 由于
$hidden
数组用于在其数组/json表示中隐藏模型属性,因此它不应干扰自动测试,而且在使用Livewire自己的方法时,因此在我看来,这看起来像是Livewire错误

帮助 有人遇到过这个错误吗

更新#1 我已经在Livewire github上为此打开了一个页面

Livewire::test(
        FormComponent::class,
    )
    ->set('user.name', 'user name')
    ->set('user.email', 'user@email.com')
    ->set('user.password', 'password')
    ->assertSet('user.name', 'user name')
    ->assertSet('user.email', 'user@email.com')
    ->assertSet('user.password', 'password');
Failed asserting that null matches expected 'password'.