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 umn 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.


Quer aprender automação de testes com Cypress na prática? Conheça meus cursos na Escola Talking About Testing, ou no Udemy.

Um comentário em “Como verificar o conteúdo de um arquivo com Cypress

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s