Flutter - Teste de Integração (Integration Test ou E2E Flutter)

Поделиться
HTML-код
  • Опубликовано: 13 дек 2024

Комментарии • 57

  • @stroherdebora
    @stroherdebora Месяц назад +1

    Muito bem explicado! Didática impecável 🥇

  • @andreoliveira8122
    @andreoliveira8122 2 года назад +4

    Cara acabei de receber uma proposta de emprego e pede conhecimento em teste de integração, vídeo na hora certa

  • @wesleyalmeidaofc
    @wesleyalmeidaofc 2 года назад +3

    esse canal é uma mina de ouro sinceramente.

  • @Andys2eduarda
    @Andys2eduarda Год назад +2

    Mais um conteúdo de altíssima qualidade.. muito obrigado professor ❤

  • @Alexandre_amds
    @Alexandre_amds 2 года назад +2

    Fui o primeiro a dar o Like, Parabéns Professor

    • @drantunes
      @drantunes  2 года назад

      Obrigado Alexandre!!!!

  • @deyvisoncruz851
    @deyvisoncruz851 Год назад

    Sensacional! Aula incrível, muito bem explicada. Obrigado!

  • @eduardospek
    @eduardospek 2 года назад +3

    Só conteúdo de qualidade! 👏🏽👏🏽👏🏽

  • @arthurpervital94
    @arthurpervital94 6 месяцев назад +1

    Oi Diego, tudo bem? Primeiro, queria agradecer pelo seu conteúdo, comecei trabalhar com testes em flutter recentemente e tem me ajudado muito.
    Uma dúvida que estou tendo para testes no flutter web, existe alguma alternativa tirando o integration test? Já estou usando Patrol para testes de app, mas infelizmente não possui suporte para web ainda. Estou achando o integration test muito lento para testes na web... Muito obrigado novamente!

    • @drantunes
      @drantunes  6 месяцев назад

      Por enquanto sim, para E2E terá que usar o integration test mesmo. Existem os drivers específicos para web, mas seria difícil lidar com eles por conta do canvas, pois basicamente eles trabalham com seletores. Talvez até ganhasse velocidade, mas teria que ficar trabalhando com coordenadas ou semantic label ou árvore de acessibilidade. :\

  • @matheuswilgengoncalves
    @matheuswilgengoncalves Год назад

    Obrigado! Seus vídeos ajudam muito.

    • @drantunes
      @drantunes  Год назад +1

      Show Matheus!!! Fico grato de ter contribuído um pouquinho ;)

  • @JulioCesar-zf8li
    @JulioCesar-zf8li 2 года назад +1

    Muito bom!
    Poderia evoluir o assunto falando de cobertura, lcov, etc...

    • @matheuswilgengoncalves
      @matheuswilgengoncalves Год назад

      Verdade, também gostaria de ver o professor comentar sobre esse assunto.

  • @Fabbio204
    @Fabbio204 2 года назад

    Muito bom, vou estudar mais a respeito. Obrigado

  • @Fabbio204
    @Fabbio204 2 года назад

    Sensacional, o tipo de conteúdo que eu estou interessado

    • @drantunes
      @drantunes  2 года назад

      Que ótimo! Sucesso Fabio!!

  • @lucaspmatos
    @lucaspmatos 2 года назад +1

    Muito bom conteúdo. Já faço e sou familiar com testes de widget e unitários, mas achava que os de integração seriam um bicho de sete cabeças, o que não pareceu com esse vídeo tão didático e ilustrativo. Mas fico imaginando um app com muitos botões, animações e transições de página, não seria interessante um profissional testador apenas com esse objetivo? O dev que já coda, testa suas unidades e etc, não vejo uma sobra de tempo para contemplar essa atividade tão importante no tempo tão curto que geralmente costumam ser as sprints.

    • @drantunes
      @drantunes  2 года назад +2

      Obrigado Lucas! São coisas diferentes, o profissional de QA sempre irá existir para garantir a qualidade do produto para o usuário final, principalmente para essas micro interações. Já o testes E2E serve para garantir que o fluxo de interação e a integração entre as funcionalidades não estejam quebradas antes de chegar ao usuário final (isso implica em testar em várias versões de Android e iOS, e em vários dispositivo) - somente com o teste automatizado isso é "viável" (embora ainda um pouco caro).

  • @BernardoVerasDev
    @BernardoVerasDev 2 года назад

    Top, estava precisando aprender testes com widget. 👏🏽

    • @drantunes
      @drantunes  2 года назад

      Espero ter ajudado!!!

  • @alexandrevilarinho5200
    @alexandrevilarinho5200 2 года назад

    Ótimo vídeo, como sempre! Mas me parece que isso tem mais sentido em grandes corporações, para compensar a montagem de toda uma estrutura dos modelos de testes.

    • @drantunes
      @drantunes  2 года назад

      O ideal mesmo é utilizar um serviço em nuvem para executar esses testes em múltiplos dispositivos e versões de OS diferentes, pois realmente é meio inviável você ter um dispositivo físico de cada fabricante com versões de Android e iOS diferentes. Publiquei hoje a parte 2 mostrando como executar os testes no Firebase Test Lab

  • @leandrosales5061
    @leandrosales5061 2 года назад

    Sempre com um conteúdo de excelência, muito obrigado professor!
    Não sei se foi por conta de versão ou algo do tipo, porém meu teste com o mudança do texto não funcionou de cara.
    Precisei usar um tap pra focar no input de texto, fora isso foi tudo numa boa 😄

    • @drantunes
      @drantunes  2 года назад +1

      Percebi um problema parecido no iOS, algo haver com o primeiro popup do teclado

  • @gabrieldonato6936
    @gabrieldonato6936 2 года назад +1

    Professor como eu faria para testar o meu app em vários tipos de celulares, para saber se meu layout está de acordo em todos ou se tem algo fora do lugar?

    • @drantunes
      @drantunes  2 года назад +2

      Sim é possível! Uma primeira alternativa é tirar screen shots do seu código por meio do teste, por exemplo:
      await binding.convertFlutterSurfaceToImage();
      await tester.pumpAndSettle();
      await binding.takeScreenshot('screenshot-1');
      Para testar em múltiplos devices, você pode usar o Firebase Test Lab, veja o novo vídeo que publiquei no canal => ruclips.net/video/RBoMdhPQX1s/видео.html

  • @marcio3560junior
    @marcio3560junior 2 года назад

    Parabéns

  • @jianliciodeoliveira6727
    @jianliciodeoliveira6727 2 года назад

    mano, na boa, vc é foda

  • @lucassilvaazevedo2808
    @lucassilvaazevedo2808 Год назад

    Estava desenvolvendo a automação de teste mobile com appium + webdriverio, porém, não esta sendo possível inspecionar alguns elementos. O flutterdrive seria melhor opção? No caso eu teria que pedir as keys pro Dev? Sou QA do time. Muito obrigado pelo conteúdo.

    • @drantunes
      @drantunes  Год назад

      Teste de caixa preta é complicado no Flutter mesmo. Recomendo dar uma olhada no Fluttium e no Patrol, que são packages novos.

  • @israelhudson
    @israelhudson 2 года назад

    Muito bom. Teria algum teste de fluxo com varias telas seguindo uma jornada?

    • @drantunes
      @drantunes  2 года назад +1

      Não tenho vídeo sobre esse caso de uso em específico, mas pode programar exatamente no caminho que deseja, usando o tap para acionar a próxima página…

  • @Seyanhyriu
    @Seyanhyriu 5 месяцев назад

    Existe alguma maneira de fazer os testes com autenticação via Azure AD? Já pesquisei sobre Patrol mas não consegui avançar.

    • @drantunes
      @drantunes  5 месяцев назад

      O que deseja fazer mais especificamente? É possível criar um pipeline customizado na Azure, mas não entendi bem o que deseja fazer.

    • @Seyanhyriu
      @Seyanhyriu 5 месяцев назад

      @@drantunes não sei se estou perguntando no vídeo correto kkk.
      No caso eu tenho um app que precisa do usuário logado no Azure para poder fazer chamadas com o token. Só que no teste eu não consigo preencher os campos de usuário e senha pois são de uma página externa

    • @drantunes
      @drantunes  5 месяцев назад +1

      @@Seyanhyriu no setup do teste você deveria setar esse token ou fazer o login automatizado antes de rodar os testes E2E.. se precisar fazer o login no fluxo de teste mesmo, ai seria bom usar o Patrol para interagir com a webview

  • @eduardoc5878
    @eduardoc5878 2 года назад

    Como faço para fazer um tap em elementos nativos como dialog de permissão para acesso a câmera nesses testes?

    • @drantunes
      @drantunes  2 года назад

      Infelizmente ainda não é possível, há alguns issues abertos no Github sobre isso. Para essas funcionalidades, agora é necessário escrever testes direto para o Android e iOS (ou seja, o que foge do Flutter)

  • @mviniciuscorrea
    @mviniciuscorrea 2 года назад

    ótimo vídeo, parabéns.. me ajudou muito. Fiquei apenas com uma dúvida do E2E, tenho um app que quero testar um cadastro mas para isso tenho que passar o login, menus e acessar o cadastro. Nesse cenário meu, tenho que criar um único testWidgets com todas as etapas ou consigo quebrar em várias? Primeiro crio um testWidgets para o login e depois crio outro testWidgets para o menu e por fim um testWidgets do cadastro? Percebi que ao terminar o primeiro testWidgets do login o app fecha pois finalizou o teste 😅

    • @drantunes
      @drantunes  2 года назад +1

      Sim, a ideia é sempre isolar os testes. Para fazer o fluxo que deseja, você precisa escrever a sequência corretamente. Caso queira reusar, pode tentar separar em funções as partes "reusáveis"

  • @psatler
    @psatler 2 года назад

    Ótimo vídeo!!

  • @joaocorreia6593
    @joaocorreia6593 Год назад

    Bom dia !
    A lib flutter_test nao seria boa tambem nao?

    • @drantunes
      @drantunes  Год назад

      Sim, mas para testes convencionais

  • @sr.peixedorgado6747
    @sr.peixedorgado6747 2 года назад

    Mestre você teria alguma dica em como resolver a questão de permissões?

    • @drantunes
      @drantunes  2 года назад

      Pelo que pesquisei ainda não, pois é necessário o acesso nativo e pelo teste ainda não é possível interagir fora do Flutter. Uma ideia é pesquisar se é possível configurar o device de teste para não solicitar a permissão.

  • @fabioaraujo1528
    @fabioaraujo1528 2 года назад

    Muito bom

  • @lucas.vinicius4
    @lucas.vinicius4 2 года назад

    Como fazer o teste de integração quando na aplicação tem vários módulos?

    • @drantunes
      @drantunes  2 года назад

      Depende da arquitetura do seu projeto. Se for uma arquitetura modular ou de micro apps, usando packages, você consegue reduzir o número de testes e fazer testes individuais em cada micro app. Caso contrário, você deve fazer o teste E2E mesmo, interagindo entre telas, como um usuário faria.

  • @elialmeida2001
    @elialmeida2001 2 года назад

    uma duvida q eu tenho , na hora de publicar o app na play store tem q tirar todos os testes do aplicativo ?

    • @drantunes
      @drantunes  2 года назад +3

      Não é necessário, pois eles não são "empacotados" no build que irá para a loja, justamente por isso é que os testes ficam fora da parta "lib" 👍

    • @elialmeida2001
      @elialmeida2001 2 года назад

      @@drantunes bom saber , muito obrigadoo

  • @JohnaThanRocha
    @JohnaThanRocha 2 года назад

    Dica para Integration Test, saiam colocando Key em tudo quanto é lugar hahahaha