Boa noite! Eu fiquei com dúvida no conceito do uso de Stub e também do stubPost no cenário de usuário que não existe. Até aonde eu entendi o stub pode ser útil em ocasiões onde, por exemplo de uma API, ser externa do sistema (de terceiros), extremamente lenta, ainda em desenvolvimento, dentre outros.
Porém, no cy.intercept, colocando quaisquer outros códigos HTTP, como 410, 411, não houve nenhum efeito colateral na execução do teste. Na aula, pelo que entendi, quando foi preenchido usuário e senha inexistentes, a API do Alurapic faz uma requisição e nesse caso, retorna uma resposta de usuário não encontrado/não autorizado e o intercept do Cypress substitui a requisição real pelo stub. E aí é que entra as dúvidas:
1 - É comum ou usual substituir o retorno da requisição real por um stub apenas para finalidade de 'simulação'em APIs com FrontEnd?
2 - Daria para nesse cenário do Alurapic não utilizar um stub e testar o retorno real da requisição para fazer o 'assert' do código HTTP?
3 - Existe um artigo na Alura sobre diferença de uso entre 'stub' e 'mock', mas ainda não captei a ideia. No contexto do Alurapic, como se aplica o uso do stub e mock?