Skip to content

Commit 47915e5

Browse files
arrumando dusk
1 parent 0e890d0 commit 47915e5

3 files changed

Lines changed: 55 additions & 10 deletions

File tree

.github/workflows/dusk.yml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,13 @@ jobs:
1212
mariadb:
1313
image: mariadb:10.11
1414
env:
15-
MARIADB_DATABASE: salas
15+
MARIADB_DATABASE: salas_dusk
16+
MARIADB_ROOT_PASSWORD: admin
17+
MARIADB_USER: admin
18+
MARIADB_PASSWORD: admin
1619
MARIADB_ALLOW_EMPTY_ROOT_PASSWORD: yes
1720
ports:
18-
- 47306:3306
21+
- 3306:3306
1922
options: >-
2023
--health-cmd="mysqladmin ping --silent"
2124
--health-interval=5s
@@ -36,23 +39,21 @@ jobs:
3639
- name: Install Composer dependencies
3740
run: composer install --no-progress --prefer-dist --optimize-autoloader
3841

39-
- name: Remove Dusk visual variables
42+
- name: Remove Dusk visual variables - usadas no modo assistido
4043
run: |
41-
sed -i '/DUSK_START_MAXIMIZED/d' .env.testing || true
42-
sed -i '/DUSK_HEADLESS_DISABLED/d' .env.testing || true
43-
echo "ENV after cleanup:"
44-
cat .env.testing
44+
sed -i '/DUSK_START_MAXIMIZED/d' .env.testing.example || true
45+
sed -i '/DUSK_HEADLESS_DISABLED/d' .env.testing.example || true
4546
4647
- name: Copy testing env
47-
run: cp .env.testing .env
48+
run: cp .env.testing.example .env
4849

4950
- name: Generate APP_KEY
5051
run: php artisan key:generate
5152

5253
- name: Wait for MariaDB
5354
run: |
5455
for i in {1..30}; do
55-
mysqladmin ping -h127.0.0.1 -P47306 --silent && break
56+
mysqladmin ping -h127.0.0.1 -P3306 --silent && break
5657
sleep 2
5758
done
5859

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
/vendor
66
.env
77
.env.backup
8-
8+
.env.testing
99
.env.dusk.local
1010
.phpunit.result.cache
1111
Homestead.json

readme.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,4 +162,48 @@ No arquivo de configuração .env:
162162

163163

164164

165+
# Rodando testes com Dusk (testes de cobertura)
166+
167+
Os testes com **Laravel Dusk** foram desenvolvidos com dois propósitos:
168+
169+
1. **Testar funcionalidades reais do sistema**, simulando a interação de um usuário no navegador.
170+
2. **Servir como documentação funcional**, demonstrando como as principais funcionalidades do sistema devem se comportar.
171+
172+
A seguir estão os passos para executar o Dusk **em modo assistido**, ou seja, diretamente na sua máquina. Nesse modo é possível **visualizar o navegador Chrome virtual executando os testes**, o que facilita a depuração.
173+
174+
Por esse motivo, neste caso **não executamos os testes em container**.
175+
176+
Entretanto, na pasta **`.github/workflows`** os testes também foram configurados para rodar automaticamente no **GitHub Actions**, garantindo que falhas nos testes sejam detectadas durante novos commits ou pull requests.
177+
178+
179+
### 1. Criar o arquivo de ambiente de testes
180+
181+
Copie o arquivo de exemplo:
182+
183+
cp .env.testing.example .env.testing
184+
185+
### 2. Criar o arquivo de ambiente de testes
186+
187+
Edite o arquivo .env.testing e configure pelo menos as variáveis de banco de dados:
188+
189+
DB_DATABASE=salas_dusk
190+
DB_USERNAME=admin
191+
DB_PASSWORD=admin
192+
193+
### 3. Configurar a porta da aplicação
194+
195+
Os testes serão executados na porta 47800. Caso prefira utilizar outra porta, basta alterar o valor de APP_URL.
196+
197+
198+
### 4. Preparar o ambiente de testes
199+
200+
php artisan key:generate --env=testing
201+
php artisan migrate:fresh --env=testing
202+
php artisan serve --port=47800 --env=testing
203+
204+
### 5. Executar os testes do Dusk
205+
206+
Durante a execução, o navegador Chrome controlado pelo Laravel Dusk abrirá automaticamente e realizará as interações definidas nos testes.
207+
208+
php artisan dusk --env=testing
165209

0 commit comments

Comments
 (0)