From 52c932f40aa1795e57e89e928617a0417274b6ed Mon Sep 17 00:00:00 2001 From: lmarthins0 Date: Mon, 19 Oct 2026 17:08:02 -0300 Subject: [PATCH 1/6] criando testes de CRUD --- resources/views/sala/listar.blade.php | 2 +- tests/Browser/CategoriaCrudTest.php | 46 +++++++++++++++ tests/Browser/ReservaCrudTest.php | 82 +++++++++++++++++++++++++++ tests/Browser/SalasCrudTest.php | 68 ++++++++++++++++++++++ 4 files changed, 197 insertions(+), 1 deletion(-) create mode 100644 tests/Browser/CategoriaCrudTest.php create mode 100644 tests/Browser/ReservaCrudTest.php create mode 100644 tests/Browser/SalasCrudTest.php diff --git a/resources/views/sala/listar.blade.php b/resources/views/sala/listar.blade.php index e7f728a..7d8b081 100644 --- a/resources/views/sala/listar.blade.php +++ b/resources/views/sala/listar.blade.php @@ -74,7 +74,7 @@ @csrf @method('delete') @if ($sala->reservas->isEmpty()) - diff --git a/tests/Browser/CategoriaCrudTest.php b/tests/Browser/CategoriaCrudTest.php new file mode 100644 index 0000000..d27bf33 --- /dev/null +++ b/tests/Browser/CategoriaCrudTest.php @@ -0,0 +1,46 @@ +browse(function (Browser $browser) { + $browser->visit('/') + ->clickLink('Entrar') + ->waitFor('#loginUsuario') # Importante: Espera a página de login carregar + ->typeSlowly('loginUsuario', '1111') + ->press('Login') + ->waitFor('.login_logout_link') + ->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') //menu + ->pause(1250) + ->click('a[href="categorias/create"]') + ->pause(1250) + ->typeSlowly('nome', 'Prédio da História e Geografia', 100) + ->pause(2000) + ->press('Enviar') + ->pause(2000) + ->assertSee('Prédio da História e Geografia'); + + $browser->click('a[title="Editar"]') + ->typeSlowly('nome', 'Prédio da Letras') + ->pause(2000) + ->press('Enviar') + ->assertSee('Prédio da Letras'); + + $browser->click('button[title="Excluir"]') + ->pause(2000) + ->acceptDialog() + ->pause(2000) + ->assertSee('Categoria excluída com sucesso.'); + }); + } +} \ No newline at end of file diff --git a/tests/Browser/ReservaCrudTest.php b/tests/Browser/ReservaCrudTest.php new file mode 100644 index 0000000..cf10327 --- /dev/null +++ b/tests/Browser/ReservaCrudTest.php @@ -0,0 +1,82 @@ +browse(function (Browser $browser) { + $browser->visit('/') + ->clickLink('Entrar') + ->waitFor('#loginUsuario') # Importante: Espera a página de login carregar + ->typeSlowly('loginUsuario', '1111') + ->press('Login') + ->waitFor('.login_logout_link') + ->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') //menu + ->pause(1250) + ->click('a[href="categorias/create"]') + ->pause(1250) + ->typeSlowly('nome', 'Prédio da Administração', 100) + ->pause(2000) + ->press('Enviar') + ->pause(2000); + + /*Buscando no banco de dados a categoria que acabou de ser criada.*/ + $categoria_id = \App\Models\Categoria::select('id')->latest()->first(); + + //2. Após a criação da categoria, cria-se uma sala com ela. + $browser->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') //menu + ->pause(1850) + ->click('a[href="salas/create"]') + ->pause(1250) + ->typeSlowly('nome', 'Sala de Informática Teste', 100) + ->typeSlowly('capacidade', '123', 150) + ->select('categoria_id', $categoria_id->id) //Selecionando o ID da cat. criada + ->pause(2300) + ->press('Enviar') + ->pause(2300); + + $sala_id = \App\Models\Sala::select('id')->latest()->first(); + + //3. Por fim, cria-se uma reserva inserindo a sala que desejamos. + $browser->click('a[href="/reservas/create"]') + ->pause(1500) + ->typeSlowly('nome', 'Reserva Teste', 100) + ->typeSlowly('data', now()->format('d/m/Y'), 50) + ->typeSlowly('horario_inicio', '8:00', 50) + ->typeSlowly('horario_fim', '10:00', 50) + ->pause(1000) + ->select('sala_id', $sala_id->id) + ->pause(2000) + ->clickAtXPath('//body') //clica fora do "calendário" + ->pause(1000) + ->radio('rep_bool', 'Não') + ->pause(2000) + ->press('Enviar') + ->pause(5000) + ->assertSee('Reserva Teste'); + + $browser->click('a[title="Editar"]') + ->pause(2000) + ->typeSlowly('nome', 'Reserva Teste alterada') + ->pause(1000) + ->press('Enviar') + ->pause(5000) + ->assertSee('Reserva Teste alterada'); + + $browser->click('button[title="Excluir"]') + ->pause(2000) + ->press("Excluir") + ->pause(2000) + ->assertSee('Reserva excluída com sucesso.'); + }); + } +} diff --git a/tests/Browser/SalasCrudTest.php b/tests/Browser/SalasCrudTest.php new file mode 100644 index 0000000..900a4f7 --- /dev/null +++ b/tests/Browser/SalasCrudTest.php @@ -0,0 +1,68 @@ +browse(function (Browser $browser) { + $browser->visit('/') + ->clickLink('Entrar') + ->waitFor('#loginUsuario') # Importante: Espera a página de login carregar + ->typeSlowly('loginUsuario', '1111') + ->press('Login') + ->waitFor('.login_logout_link') + ->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') //menu + ->pause(1250) + ->click('a[href="categorias/create"]') + ->pause(1250) + ->typeSlowly('nome', 'Prédio da Administração', 100) + ->pause(2000) + ->press('Enviar') + ->pause(2000); + + /*Buscando no banco de dados a categoria que acabou de ser criada.*/ + $categoria_id = \App\Models\Categoria::select('id')->latest()->first(); + + //2. Após a criação da categoria, cria-se uma sala com ela. + $browser->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') //menu + ->pause(1850) + ->click('a[href="salas/create"]') + ->pause(1250) + ->typeSlowly('nome', 'Sala de Informática Teste', 100) + ->typeSlowly('capacidade', '123', 150) + ->select('categoria_id', $categoria_id->id) //Selecionando o ID da cat. criada + ->pause(2300) + ->press('Enviar') + ->pause(2300) + ->assertSee('Sala criada com sucesso'); + + $sala_id = \App\Models\Sala::select('id')->latest()->first(); + + $browser->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') + ->click('a[href="salas/listar"]') + ->assertSee('Sala de Informática Teste') + ->pause(2000) + ->click("a[href='http://salas/salas/{$sala_id->id}/edit']") + ->typeSlowly('nome', 'Sala de Informática Teste alterada.') + ->press('Enviar') + ->assertSee('Sala atualizada com sucesso'); + + $browser->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') + ->click('a[href="salas/listar"]') + ->assertSee('Sala de Informática Teste alterada.') + ->press("button[data-sala-id='{$sala_id->id}']") + ->acceptDialog() + ->pause(2000) + ->assertSee('Sala excluída com sucesso'); + }); + } +} From fe44eb713fcfe64e6fd21989aedff291de63736c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=B4nica=20Colacique?= Date: Thu, 5 Nov 2026 15:46:12 -0300 Subject: [PATCH 2/6] Update LoginTest.php --- tests/Browser/LoginTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Browser/LoginTest.php b/tests/Browser/LoginTest.php index d4b7c1e..9cf92db 100644 --- a/tests/Browser/LoginTest.php +++ b/tests/Browser/LoginTest.php @@ -17,7 +17,7 @@ public function test_example(): void $browser->visit('/') ->clickLink('Entrar') ->waitFor('#loginUsuario') # Importante: Espera a página de login carregar - ->typeSlowly('loginUsuario', '1111') + ->typeSlowly('loginUsuario', '111111') ->press('Login') ->waitFor('.login_logout_link'); }); From d42d84f4fd83b0b6661e43a39a0e8155993f3e04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=B4nica=20Colacique?= Date: Thu, 5 Nov 2026 15:46:33 -0300 Subject: [PATCH 3/6] Update ReservaCrudTest.php --- tests/Browser/ReservaCrudTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Browser/ReservaCrudTest.php b/tests/Browser/ReservaCrudTest.php index cf10327..918762e 100644 --- a/tests/Browser/ReservaCrudTest.php +++ b/tests/Browser/ReservaCrudTest.php @@ -17,7 +17,7 @@ public function test_reserva_crud(): void $browser->visit('/') ->clickLink('Entrar') ->waitFor('#loginUsuario') # Importante: Espera a página de login carregar - ->typeSlowly('loginUsuario', '1111') + ->typeSlowly('loginUsuario', '111111') ->press('Login') ->waitFor('.login_logout_link') ->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') //menu From 75ff961614169ae4ebc791d508448db920b1cb49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=B4nica=20Colacique?= Date: Thu, 5 Nov 2026 15:46:50 -0300 Subject: [PATCH 4/6] Update SalasCrudTest.php --- tests/Browser/SalasCrudTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Browser/SalasCrudTest.php b/tests/Browser/SalasCrudTest.php index 900a4f7..73761df 100644 --- a/tests/Browser/SalasCrudTest.php +++ b/tests/Browser/SalasCrudTest.php @@ -17,7 +17,7 @@ public function test_salas_crud(): void $browser->visit('/') ->clickLink('Entrar') ->waitFor('#loginUsuario') # Importante: Espera a página de login carregar - ->typeSlowly('loginUsuario', '1111') + ->typeSlowly('loginUsuario', '111111') ->press('Login') ->waitFor('.login_logout_link') ->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') //menu From de3dce324f453d78421ceaf66050bfd53f0f8df9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=B4nica=20Colacique?= Date: Thu, 5 Nov 2026 15:58:25 -0300 Subject: [PATCH 5/6] Update ReservaCrudTest.php --- tests/Browser/ReservaCrudTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Browser/ReservaCrudTest.php b/tests/Browser/ReservaCrudTest.php index 918762e..cf10327 100644 --- a/tests/Browser/ReservaCrudTest.php +++ b/tests/Browser/ReservaCrudTest.php @@ -17,7 +17,7 @@ public function test_reserva_crud(): void $browser->visit('/') ->clickLink('Entrar') ->waitFor('#loginUsuario') # Importante: Espera a página de login carregar - ->typeSlowly('loginUsuario', '111111') + ->typeSlowly('loginUsuario', '1111') ->press('Login') ->waitFor('.login_logout_link') ->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') //menu From 45e6e4418252589b3de9d849b35154b03efd1481 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=B4nica=20Colacique?= Date: Thu, 5 Nov 2026 15:58:44 -0300 Subject: [PATCH 6/6] Update SalasCrudTest.php --- tests/Browser/SalasCrudTest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Browser/SalasCrudTest.php b/tests/Browser/SalasCrudTest.php index 73761df..900a4f7 100644 --- a/tests/Browser/SalasCrudTest.php +++ b/tests/Browser/SalasCrudTest.php @@ -17,7 +17,7 @@ public function test_salas_crud(): void $browser->visit('/') ->clickLink('Entrar') ->waitFor('#loginUsuario') # Importante: Espera a página de login carregar - ->typeSlowly('loginUsuario', '111111') + ->typeSlowly('loginUsuario', '1111') ->press('Login') ->waitFor('.login_logout_link') ->click('#navbarDropdowniclassfafausercogariahiddentrueiAdministrao') //menu