Dusk 中的 URL 断言要使用哪个函数?
Which function to be used for URL assertion in Dusk?
public function testPagination()
{
$this->browse(function($first)
{
$first->loginAs(\App\User::find(1))
->visit('http://mettledlp.in.linuxense.com/user');
});
$this->browse(function(Browser $browser)
{
$browser->visit('http://mettledlp.in.linuxense.com/mailLog?page=1')
->clickLink('2')
->assertUrlIs('http://mettledlp.in.linuxense.com/mailLog?page=2');
});
}
错误
1) Tests\Browser\MessageTest::测试分页
实际 URL [http://mettledlp.in.linuxense.com/mailLog?page=2] does not equal expected URL [http://mettledlp.in.linuxense.com/mailLog?page=2]。
断言“http://mettledlp.in.linuxense.com/mailLog”与 PCRE 模式“/^http://mettledlp.in.linuxense.com/mailLog\?page\=2$/u”匹配失败。
两者 URL 对我来说似乎是一样的。我正在尝试单击分页产生的“2”。截图显示点击已经成功完成。
当我运行命令phpartisandusk。我给出的错误弹出并且测试失败。
assertUrlIs 断言当前 URL(没有查询字符串)匹配给定的字符串:
$browser->assertUrlIs($url);
Laravel Dusk 没有提供将 URL 与查询字符串相匹配的方法。
你可以这样做
$this->assertEquals($browser->driver->getCurrentURL() , 'your-url');
断言给定的查询字符串参数存在且具有给定值:
$browser->assertQueryStringHas($name, $value);
因此您可以使用这样的查询字符串测试 url:
$browser->visit('mettledlp.in.linuxense.com/mailLog?page=1')
->clickLink('2')
->assertUrlIs('mettledlp.in.linuxense.com/mailLog')
->assertQueryStringHas('page','2');
public function testPagination()
{
$this->browse(function($first)
{
$first->loginAs(\App\User::find(1))
->visit('http://mettledlp.in.linuxense.com/user');
});
$this->browse(function(Browser $browser)
{
$browser->visit('http://mettledlp.in.linuxense.com/mailLog?page=1')
->clickLink('2')
->assertUrlIs('http://mettledlp.in.linuxense.com/mailLog?page=2');
});
}
错误 1) Tests\Browser\MessageTest::测试分页 实际 URL [http://mettledlp.in.linuxense.com/mailLog?page=2] does not equal expected URL [http://mettledlp.in.linuxense.com/mailLog?page=2]。 断言“http://mettledlp.in.linuxense.com/mailLog”与 PCRE 模式“/^http://mettledlp.in.linuxense.com/mailLog\?page\=2$/u”匹配失败。
两者 URL 对我来说似乎是一样的。我正在尝试单击分页产生的“2”。截图显示点击已经成功完成。 当我运行命令phpartisandusk。我给出的错误弹出并且测试失败。
assertUrlIs 断言当前 URL(没有查询字符串)匹配给定的字符串:
$browser->assertUrlIs($url);
Laravel Dusk 没有提供将 URL 与查询字符串相匹配的方法。
你可以这样做
$this->assertEquals($browser->driver->getCurrentURL() , 'your-url');
断言给定的查询字符串参数存在且具有给定值:
$browser->assertQueryStringHas($name, $value);
因此您可以使用这样的查询字符串测试 url:
$browser->visit('mettledlp.in.linuxense.com/mailLog?page=1')
->clickLink('2')
->assertUrlIs('mettledlp.in.linuxense.com/mailLog')
->assertQueryStringHas('page','2');