我正在进行我的第一个DUSK(基于PHPUnit)测试。我正在创建一个客户并转到他们的show
页面。UUID在保存到数据库中时创建,并用作路由的一部分。路由可以处理未知的uuid
,因为它们具有通配符语法。
Route::get('/customer/{uuid}/show', 'App\Http\Controllers\CustomerController@show')->name('customer.show');
PHPUnit/DUSK有类似的功能吗?
这是我已经厌倦了,但Assert失败。
...
->press('NEW CUSTOMER')
->waitForLocation('/customer/create')
->type('first_name', 'John')
->type('last_name', 'Doe')
->type('date_of_birth', '03/03/1933')
->press('SAVE')
->waitForLocation('/customer/{uuid}/show')
->assertPathIs('/customer/{uuid}/show');
**TLDR:**PHPUnit是否允许在路由Assert中使用通配符?
1条答案
按热度按时间n1bvdmb61#
你认为它是如何工作的?客户端必须以某种方式知道UUID。有3个选项:
1.返回响应体中新创建客户的UUID。
1.从服务器返回HTTP 301响应,其中包含创建的资源的位置,即只将客户端重定向到新客户的页面。
1.最后一个-在客户端生成UUID,而不是在后端生成。这样客户端将自动知道新客户的UUID。