Cypress Page Object vs GUI Custom Commands
Vložit
- čas přidán 8. 04. 2021
- Neste vídeo, demonstro o uso do padrão Page Objects com Cypress, o uso de comandos customizados de GUI (graphical user interface) e uma abordagem mais simplista, sem um nem outro.
Segue o repositório demonstrado no vídeo github.com/wlsf82/page-object....
Aproveite para conhecer meus cursos de Cypress no Udemy udemy.com/user/walmyr
E conheça também o blog TalkingAboutTesting.com e as "pitadas de Cypress"
👋😉
Até a próxima e bons testes! - Věda a technologie
Cara, foram "só" 15 minutos, mas ficou bem claro cada um deles. Valeu, Walmyr!
Que legal Thiago!
Excelente conteúdo Walmyr ! Gosto muito de custom commands.
Obrigado Alexandre!
Já deixo o Like pq o conteúdo é de qualidade
Obrigado Humberto!
Ótima diferenciação das formas de se resolver os problemas e essa sacada realmente foi boa de que apenas Custom Commands não é appActions
Legal que curtiu Rafael!
top proff
Obrigado Bruno!
Boa Walmyr! eu jurava que um custom commands era considerado um AppActions
Eu também. =D
Vivendo e aprendendo!
Pretendo fazer um vídeo específico sobre esta diferença, ou uma live.
@@TalkingAboutTesting vai ser ótimooo
Oi walmyr!! obg pelo video increible. Você acha que é uma prática ruim usar pom e comandos personalizados ao mesmo tempo?
É difícil para mim entender como separar as páginas usando app actions e custom commans, por exemplo home, login, market etc
Eu simplesmente não uso Page Objects com Cypress Nicolas, porém, se bem usado, não vejo problema.
O problema é que a maioria dos códigos que usam Page Objects que reviso fazem mal uso da técnica, focam em fazer tudo via GUI, fazer over-engineering, etc.
Para um exemplo de um projeto complexo que usa só custom commands (e tasks), acesse github.com/wlsf82/gitlab-cypress
@@TalkingAboutTesting O problema que estou vendo é que é difícil eu entender as páginas daquele projeto, qual é a home, qual é o login, etc. Acho que devo cloná-lo primeiro e revisá-lo bem.
Estou tendo esse problema com appactions e comandos personalizados, entendendo como modelar os testes da página. a propósito walmyr, você tem um cupom ativo para um curso da udemy? Eu queria comprar o intermediário.
Oi @@nicolaslopez5157, segue o cupom de desconto pro curso intermediário www.udemy.com/course/testes-automatizados-com-cypress-intermediario/?couponCode=2D3B5277B75872E66F47
Is it possible to provide the video also with English subtitles? Unfortunately I don't understand Portuguese and I'm very interesting in the subject Page Objects vs Custom commands.
I intend to have more content in English for the channel, but at the moment this is all I have czcams.com/play/PL-eblSNRj0QFCgBuHFSSJUeEYDm6wwvHI.html
I might translate some playlists in the future.
Fiquei na duvida qual é o melhor para usar (Page Object ou Custom Commands).
Atualmente uso Custom Commands em meus testes de API, com isso consigo fazer as minhas validaçoes sem problemas usando expect(response.... ) e outros.
Confesso que tentei usar o Page Object, mas nao curti, pois nao consigo fazer validaçoes dentro do meu IT de teste.( talvez eu nao tenha entendido o sentido da coisa! rsrsrs)
Walmyr, consegue me explicar isso sobre qual o melhor usar.
Melhor é algo muito relativo. Já falei sobre minhas preferências em outros vídeos. Recomendo assistir ao vídeos descritos nesta página page-objects-anonimos.vercel.app.
Eu sempre preferi usar uma mescla dos dois: Para coisas mais genéricas como login, uso comandos customizados e para páginas específicas, uso Page Objects. Gostaria de entender sua visão de como fica esse arquivo de comandos personalizados quando o projeto se torna maior, com centenas de funções personalizadas, você mantém todas as funções dentro desse mesmo arquivo? Se for isso, parece meio inviável a longo prazo pra dar manutenção.
Crio diferentes arquivos de comandos customizados e os importo no arquivo cypress/support/e2e.js
Recomendo ler este blog post talkingabouttesting.com/2021/02/10/como-criar-comandos-customizados-com-cypress/
vc opera forex tb ?
Nunca ouvi falar. O que é?
O curioso é que utiliza uma constante mas vai alterando o estado/valores dela conforme as execuções dos testes... O ideal não seria uma let quando vai alterar o estado/valores?
Não, pois objeto é um tipo estrutural.
Recomendo assistir a seguinte live, onde abordei a diferença entre tipos primitivos e estruturais em JavaScript czcams.com/video/DyrUDvnAZgY/video.html.