Você sabia que com Cypress é possível ler o conteúdo de um arquivo?
Hoje em “pitadas de Cypress“, aprenda como isso funciona.
Para facilitar a explicação, irei utilizar um exemplo do curso de testes automatizados com Cypress intermediário da Escola TAT.
No curso, a aplicação em teste é a versão open-source do GitLab.
Dentre questões relacionadas a otimização de testes de interface gráfica de usuário, durante o curso também ensino como utilizar o Cypress para interagir com a aplicação à nível de sistema operacional, tal como a execução de uma instrução via linha de comando para clonar um projeto.
Vejamos um exemplo.
const faker = require('faker')
describe('git clone', () => {
const project = {
name: `project-${faker.random.uuid}`,
description: `faker.random.words(5)`
}
beforeEach(() => cy.api_createProject(project))
it('successfully', () => {
cy.cloneViaSSH(project)
cy.readFile(`temp/${project.name}/README.md`)
.should('contain', `# ${project.name}`)
.and('contain', project.description)
})
})
No bloco it, invoco o comando customizado cloneViaSSH passando o objeto project como argumento, e então, utilizo o comando readFile passando como argumento o arquivo README.md do projeto recém clonado. Por fim, verifico que o nome do projeto é contido como título do arquivo, e que sua descrição também é contida no mesmo.
Ah, deixa eu mostrar o comando customizado que clona o projeto.
Cypress.Commands.add('cloneViaSSH', project => {
const domain = Cypress.config('baseUrl').replace('http://', '').replace('/', '')
cy.exec(`cd temp/ && git clone git@${domain}:${cypress.env.user_name}/${project.name}.git`)
})
É isso aí!
E aí, gostou?
Deixa um comentário com o que devo escrever em uma próxima “pitada de Cypress“.
Este conteúdo foi traduzido para inglês e pode ser encontrado no DEV Community.
Ficou curioso(a) e quer aprender mais sobre automação de testes com Cypress? Conheça os cursos da Escola TAT.
- Cypress, do Zero à Nuvem
- Cypress Playground
- Cypress intermediário
- Cypress avançado
- Boas práticas em automação de testes com Cypress
- Testes end-to-end com Cypress
Bons testes! 🎉
Obrigado pelo conteudo Walmyr, você poderia fazer um vídeo ou um post sobre como podemos validar os dados das colunas e linhas de um arquivo .xlsx? Exemplo: Tenho uma tabela no meu sistema que me permite realizar o export dos dados, e após realizar o export .xlsx via cypress quero validar se os dados do arquivo estão coerentes com os dados da tabela do sistema. Agradeço por compartilhar seu conhecimento.
Recomendo a leitura deste conteúdo. Espero que ajude.
Ver no Medium.com