Laravel Dusk 提供我们浏览器自动化及测试 API。首先把套件引入
composer require --dev laravel/dusk
再来我们利用 dusk:install 来创建 tests/Browser 目录
php artisan dusk:install
接着我们可以开始看一下 tests/DuskTestCase.php 这个档案,里面主要是基本 Dusk 测试用例,我们要把 startChromeDriver 删除,不删除会开启Chrome。
接下来设置一个测试档案
php artisan dusk:make LoginTest
我们可以看到 tests/Browser 中有 LoginTest.php 这个档案,稍微编辑一下
public function testExample()
{
$this->browse(function (Browser $browser) {
$browser->visit('/')
->assertSee('我是首页');
});
}
接着测试看看
php artisan dusk
我们接着试着用他登入
class LoginTest extends DuskTestCase
{
use DatabaseMigrations;
/**
* A Dusk test example.
*
* @return void
*/
public function testBrowser()
{
User::create([
'account' => 'Jim',
'password' => Hash::make('ANDf3_'),
'name' => 'Jim'
]);
$this->browse(function ($browser) {
$browser->visit('/login')
->type('account', 'Jim')
->type('password', 'ANDf3_')
->press('login')
->assertPathIs('/login');
});
}
}
我们用 DatabaseMigrations 这个trait来让DB在测试完後恢复原状,并访问登入页面,模拟输入帐密後,按下登入键的情境。
得到的结果
今天先介绍简单的测试方法,明天再见罗!
<<: Day 23 : 案例分享(7.2) 库存与制造 - 供应商直运、制造出货、采购出货(自动化库存调拨)
>>: DAY 26 Big Data 5Vs – Veracity(准确性) AGQ
今天来讲一些使用套件来方便我们做自动化的一些流程,今天要提的是lint-staged与husky. ...
上一篇我们的基因体时代-AI, Data和生物资讯 Day05- 深度学习在基因体学的建模架构02上...
Vuex 是 Vue中用来管理状态的函式库,像是使用者的登入状态,就可以把它存入Vuex中。 htt...
昨天介绍完使用相机拍照,今天会分享如何从相簿选取照片 成品: 拉一个 Button 、 ImageV...
前情提要 完成了新增英雄页面、英雄资讯元件後,在我们劝诱青铜五小强之前,让我们先停一停,来重构整个专...