Newsletter #035 - Testes E2E e Playwright P. II
Seu newsletter semanal voltado para tecnologia e qualidade de software
Olá pessoal, mais uma semana de newsletter voltado para tecnologia e qualidade de software.
Na semana passada iniciamos nossa jornada no conhecimento de testes E2E e a ferramenta de testes Playwright, caso não tenha lido, segue o link. Nessa semana estaremos aplicando um básico do desenvolvimento de testes e2e com o Playwright, bora lá?
Pratica
Bom, após termos instalado o Playwright com o comando npm init playwright@latest
vamos desenvolver nosso primeiro teste no site https://seubarriga.wcaquino.me/login.
Com o VSCode aberto dentro do projeto que criamos na pasta tests vamos criar o primeiro arquivo de teste login.spec.js. e vamos escrever o seguinte código.
// @ts-check
const { test, expect } = require('@playwright/test');
test('Acessar tela inicial e fazer login', async ({ page }) => {
await page.goto('https://seubarriga.wcaquino.me/login');
await expect(page).toHaveTitle(/Seu Barriga - Log in/);
const emailInput = await page.getByPlaceholder('Email').fill('fulano@qa.com');
const senhaInput = await page.getByPlaceholder('Password').fill('teste');
const loginButton = await page.getByRole('button', { name: 'Entrar' }).click();
});
Certo, a primeira parte do código estamos importando a API do Playwright para realizar o teste e também a etapa de validação de uma ação que realizamos com a ferramenta de teste, por exemplo o comando page.goto()
chama como parâmetro a página que você deseja testar e o expect() eu estou validando que após a página carregar apareça o título Seu Barriga - Log in, dessa forma uma das primeiras lições é sempre que haver uma ação na tela realize uma validação para não deixar o teste suscetível a falso positivo.
Posteriormente nas linhas const emailInput
estamos criando uma variável na qual pega o elemento na tela a partir do placeholder e digita na tela com o comando fill() a palavra que está entre parâmetro da função, isto é, fulano@qa.com.
Com esse primeiro teste criado, vamos executar o teste, para isso no terminal digite npx playwright test
e em poucos segundos aparecerá que o teste passou e na tela um relatório especificando qual teste passou.
Voltando um pouco, na hora que foi executado o teste você pode ter percebido que houve a execução em três navegadores, caso você queira especificar qual navegador é o default e também demais configurações, basta abrir o arquivo playwright.config.js que você verá essas configurações.
Para a próxima semana, estaremos desenvolvendo mais um cenário de teste e também conhecendo a parte de testes UI do Playwright, não perca!
O que rolou de Tecnologia?
Melhores práticas para autorização de API - excelente artigo para apresentar uma visão das melhores práticas que deve ser seguida para implementar a camada de autorização de uma API.
10 padrões de design de microsserviços para uma melhor arquitetura - junto com a arquitetura combináveis, microsserviços são tendências de implementação de aplicações, nesse sentido esse artigo apresenta 10 tipos de padrões de design que melhoram sua arquitetura microsserviço.
Arquiteturas de software combináveis são tendências: aqui está o porquê - a arquitetura de software está sempre em evolução. Tempos atrás conhecemos alguns dos tipos de arquitetura e neste artigo apresenta os princípios e vantagens de utilizar arquiteturas combináveis.
E Qualidade de Software, como está?
Teste de software em 2024: inovações e transformações - a qualidade de software assim como toda a área de tecnologia está em evolução, então, sempre bom conhecer as inovações da área para o ano de 2024.
Teste right shift - talvez ao ler o texto achou estranho o título, pois no dia atual o conceito de shift left é o mais utilizado, então pare um tempo para ler e entender um pouco mais dessa visão de tipo de testes.
Playwright’s auto-wait is simple and superb - artigo muito interessante que apresenta uma visão de reconhecimento de como é bom a implementação dos auto-waits em Playwright.
Eventos Importantes não perca!
DevOps Descomplicado: Construindo Pontes entre Desenvolvimento e Operações para Iniciantes - Evento Online.
Data: 04/04
Inscrições abertas
Vejo vocês na próxima newsletter 😁🚀!
“Verdade e clareza são complementares.” – Niels Bohr