-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add first cypress tests #2
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Parabéns pelo trabalho, Pedro!
Foste um dos primeiros a entregar a PR e conseguiste implementar vários testes já nessa rodada. Foi bacana analisar seu código.
Gostei da forma como lidaste com os cookies e como usou a BaseURL. Muito bom!
Sugiro sempre adicionar uma descrição na PR. Isso ajuda o revisor a entender o que foi acrescentado. Tenho um padrão bem bacana, vou te mandar via comentário adicional.
Se possível, aguarda a próxima aula para fazer as correções, aposto que já vais ter outros insights!
Sucesso nos próximos testes!
@@ -0,0 +1,25 @@ | |||
// *********************************************** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Recomendo remover a pasta support, pois não foi criado nenhum custom-command.
Além de apontar para o não uso da pasta fixtures, deves acrescentar um argumento que não estava no arquivo de configuração na raiz do projeto, no caso, supportFile: false
.
Segue exemplo:
// cypress.config.js
const { defineConfig } = require('cypress')
module.exports = defineConfig({
e2e: {
baseUrl: '...',
supportFile: false
},
fixturesFolder: false,
})
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mesma coisa aqui.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mais uma conversa resolvida sem a implementação da sugestão e sem uma justificativa para a não-implementação da mesma.
Como prometido, segue um padrão para descrição de PR, evidentemente que usas somente o que for necessário para a ocasião! haahaha Descrição
Issue RelacionadaCloses #[Número da Issue] Tipo de Mudança
Como isso foi testado?
Checklist
Capturas de Tela (se aplicável)Outras Observações |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@pedrohyvo, parabéns pela resolução deste primeiro round dos exercícios.
Deixei alguns comentários também, os quais creio que lhe ajudarão a melhorar ainda mais o design dos seus testes.
Aguarde até o próximo encontro antes de implementar as mudanças.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mais uma vez parabéns pelos ajustes @pedrohyvo! 👏🏻
Deixei mais alguns comentários os quais creio que lhe ajudarão a melhorar o design dos testes.
Lembre-se de só enviar novas mudanças para revisão após o próximo sábado (19/10/2024).
|
||
To run cypress tests, you will need to run the following command: | ||
``` | ||
Interactive: npm run cy:open |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Interactive: npm run cy:open | |
Interactive: `npm run cy:open` |
Ao colocar o comando entre aspas, o GitHub o renderiza como código, visto a sintaxe de Markdown.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Não resolva conversas sem implementar a sugestão, ou sem uma justificativa para a não-implementação.
To run cypress tests, you will need to run the following command: | ||
``` | ||
Interactive: npm run cy:open | ||
Headless: npm test or npm t |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Headless: npm test or npm t | |
Headless: `npm test or npm t` |
Mesma coisa aqui.
@@ -0,0 +1,25 @@ | |||
// *********************************************** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mesma coisa aqui.
@@ -0,0 +1,20 @@ | |||
// *********************************************************** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
E aqui.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mais uma conversa resolvida sem a implementação da sugestão e sem uma justificativa para a não-implementação da mesma.
cf6ac84
to
9c173bd
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Parabéns por mais uma rodada de implementação dos exercícios @pedrohyvo. 👏🏻
Deixei novos comentários os quais espero que lhe ajudem a melhorar suas habilidades de design de testes.
Espero que tenha gostado da experiência de code review da Test Design Masterclass da Talking About Testing.
env: { | ||
API_URL: 'http://localhost:3001', | ||
} | ||
}) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
}) | |
}) |
Cuidado com a indentação!
|
||
To run cypress tests, you will need to run the following command: | ||
``` | ||
Interactive: npm run cy:open |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Não resolva conversas sem implementar a sugestão, ou sem uma justificativa para a não-implementação.
}) | ||
|
||
context('Customer Details', () => { | ||
it.only('It shows and hides the customer address', () => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it.only('It shows and hides the customer address', () => { | |
it('It shows and hides the customer address', () => { |
Cuidado para não fazer o commit de testes com .only
.
context('Customer Details', () => { | ||
it.only('It shows and hides the customer address', () => { | ||
cy.contains('button', 'View').click() | ||
cy.contains('h2', 'Customer Details').should('be.visible') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cy.contains('h2', 'Customer Details').should('be.visible') | |
cy.contains('h2', 'Customer Details').should('be.visible') | |
it.only('It shows and hides the customer address', () => { | ||
cy.contains('button', 'View').click() | ||
cy.contains('h2', 'Customer Details').should('be.visible') | ||
cy.get('button[class*="CustomerDetails_showAddressBtn"]').click() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cy.get('button[class*="CustomerDetails_showAddressBtn"]').click() | |
cy.get('button[class*="CustomerDetails_showAddressBtn"]').click() | |
"totalPages": 1, | ||
"totalCustomers": 1 | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
} | |
} | |
|
||
module.exports = defineConfig({ | ||
e2e: { | ||
setupNodeEvents(on, config) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Não resolva conversas sem implementar a mudança sugerida.
E se tiver um motivo para não implementar a sugestão, deixe aqui um contra-argumento sem resolver a conversa, para que o/a revisor(a) possa entender sua justificativa.
@@ -0,0 +1,5 @@ | |||
{ | |||
"name": "Using fixtures to represent data", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Faltou deletar essa fixture visto que ela não está em uso.
@@ -0,0 +1,25 @@ | |||
// *********************************************** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mais uma conversa resolvida sem a implementação da sugestão e sem uma justificativa para a não-implementação da mesma.
@@ -0,0 +1,20 @@ | |||
// *********************************************************** |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mais uma conversa resolvida sem a implementação da sugestão e sem uma justificativa para a não-implementação da mesma.
Descrição
Qual o propósito desta PR?
O propósito do PR é implementar testes e2e para a aplicação EngageSphere no nível Avançado.
O que foi alterado?
Foi adicionar o cypress juntamente com alguns testes e2e ao repositório.
Qual problema está sendo resolvido? (se aplicável)
Issue Relacionada
Tipo de Mudança
Como isso foi testado?
Checklist
Capturas de Tela (se aplicável)
Outras Observações