1
resposta

Como usar funções dento do arquivo de teste

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Neste caso, se refatoramos para utilizar essas funções, onde estariam localizadas as funções (fazLoginNoSite, escolheFoto e fazDownloadFotoSelecionada)? No mesmo arquivo?

1 resposta

Oi Janile, tudo bem?

Desculpe a demora em retornar.

As funções fazLoginNoSite, escolheFoto, e fazDownloadFotoSelecionada devem ser definidas em algum lugar do código para serem utilizadas no teste. Existem algumas opções sobre onde essas funções podem ser localizadas:

  1. No mesmo arquivo de teste: Você pode definir essas funções diretamente no mesmo arquivo em que o teste está sendo escrito. Isso é viável e pode funcionar bem, especialmente se essas funções forem específicas do teste em questão e não são compartilhadas com outros testes.

    it('Busca fotos no site AluraPic', () => {
      fazLoginNoSite(login, senha);
      escolheFoto(foto);
      fazDownloadFotoSelecionada();
    })
    
    // Funções utilizadas no teste
    function fazLoginNoSite(login, senha) {
      // Implementação do login
    }
    
    function escolheFoto(foto) {
      // Implementação para selecionar a foto
    }
    
    function fazDownloadFotoSelecionada() {
      // Implementação para fazer o download da foto selecionada
    }
    
  2. Arquivo separado para funções de teste: Se essas funções forem relevantes para outros testes ou se você quiser manter o arquivo de teste mais organizado, pode criar um arquivo separado para essas funções de teste e importá-las no arquivo de teste que as utiliza.

    // testeUtil.js - Arquivo separado com funções de teste
    export function fazLoginNoSite(login, senha) {
      // Implementação do login
    }
    
    export function escolheFoto(foto) {
      // Implementação para selecionar a foto
    }
    
    export function fazDownloadFotoSelecionada() {
      // Implementação para fazer o download da foto selecionada
    }
    
    // arquivoDeTeste.spec.js - Arquivo de teste que utiliza as funções
    import { fazLoginNoSite, escolheFoto, fazDownloadFotoSelecionada } from './testeUtil.js';
    
    it('Busca fotos no site AluraPic', () => {
      fazLoginNoSite(login, senha);
      escolheFoto(foto);
      fazDownloadFotoSelecionada();
    });
    

Onde você deve definir essas funções depende do contexto, do escopo de uso e da estrutura geral do seu projeto de teste. Se essas funções são específicas para um único teste e não são usadas em outros lugares, colocá-las diretamente no arquivo de teste pode ser uma opção mais simples. Caso contrário, agrupá-las em um arquivo separado pode ajudar na organização e na reutilização das funções em outros testes.

Ah esse curso recebeu uma atualização, você pode verificar aqui:

Um abraço e bons estudos.