我正在测试一个带有按钮的页面,该按钮打开一个模态来编辑记录。
S
在我的刀片文件中,我有:
$this->visit('/admin/dashboard/units')
->see($site->name . ' ' . '~' . ' ' . 'Units')
->see($unit_type->name)
->see($unit->unit_type_id)
->see($unit->status)
->click('Edit')
但仍然无效
但是我收到了这个错误:
有1个错误:
1)UnitsTest :: testEditUnit InvalidArgumentException:找不到 链接[编辑]的正文,名称或ID属性。
更新
我也试过传递像这样的id
<a class="button warning" data-open="editUnit{{ $unit->id }}">Edit</a>
答案 0 :(得分:0)
问题在于我自己测试了编辑表单,但它是当前页面的一部分,采用模态。所以我将测试与创建测试结合起来。
$this->visit('/admin/dashboard/units')
->see($site->name . ' ' . '~' . ' ' . 'Units')
->seePageIs('/admin/dashboard/units')
->type('Unit 1', 'name')
->select($unit_type->id, 'unit_type_id')
->press('Add Unit')
->see('Unit saved successfully')
->see('Unit 1')
->seeInDatabase('units', [
'name' => 'Unit 1',
'unit_type_id' => $unit_type->id
])
->click('Edit')
->type('Edited Unit', 'name')
->select($unit_type->id, 'unit_type_id')
->press('Save')
->see('Unit Updated Successfully')
->see('Edited Unit')
->seeInDatabase('units', [
'name' => 'Edited Unit',
'unit_type_id' => $unit_type->id
])
->click('Delete')
->press('Yes')
->see('Unit Deleted Successfully')
->dontSee('Edited Unit')
->dontSeeInDatabase('units', [
'name' => 'Edited Unit',
'unit_type_id' => $unit_type->id
]);
另外值得注意的是,从laravel 5.4测试方法(例如visit
,see
,click
已被删除。看到这个link,Adam有很好的升级tutorials