E aí [Música] o Olá pessoal não de hoje então a gente vai falar dos Testes automatizados né para aplicativos para dispositivos móveis tá é os testes automatizados eles são importantes né que a gente vai ver ao longo dessa aula aqui porque muitas vezes para você cobrir todas as situações se possibilidades como a gente vai ver aqui que podem ocorrer durante o funcionamento de um aplicativo fazer isso de forma manual seria praticamente impossível tá é então vamos dar uma olhada aqui no diferentes tipos de testes automatizados que são aplicados tá o que cada um deles procura
verificar e depois nós vamos falar um pouquinho também sobre as ferramentas né as diferentes ferramentas né que podem ser utilizada né para a execução desses testes automatizados bom então é importante salientar que muitas vezes né a etapa de teste validação ela é até mais complexa do que a etapa desenvolvimento é inclusive daqui a pouco a gente vai verificar diferentes tipos né de testes que podem ser utilizados em uma dessas modalidades por exemplo se você tiver uma aplicação que tem uma tarefa muito específica você pode Inclusive tem que desenvolver nenhum outro software só para que você
possa testar aquela a funcionalidade tá então é por isso que tá sendo dito aqui que muitas vezes essa etapa pode ser inclusive mais complexa que o próprio desenvolvimento tá é e de uma forma geral esses testes né Vamos tentar verificar e validar nenhum aplicativo em diferentes aspectos relacionados ao funcionamento que a gente já vai ver na sequência aqui tá é que nem eu comentei né fazer esse tipo de validação né como vai ficar Faro longo da aula de forma manual é se tornaria praticamente impossível só vai ter uma situação na verdade que a gente vai
ver que ao longo da aula que às vezes um teste manual é interessante e tem a ver com que a gente viu na aula anterior né quando a gente está preocupado que com a usabilidade com a experiência do usuário né com aquele aplicativo então nessa hora às vezes você tem um feedback humano é importante e a gente vai ver que tem empresas que se dedicam né a esse tipo de teste Tá mas na sequência a gente comenta em detalhe oi olha só é através do teste automatizado né O que que é possível em algumas as
tarefas que dificilmente conseguiria talvez executado de forma manual e que são possíveis no teste automatizado e mais do que isso elas me permitem ganhar tempo né me permitem ganhar em termos de produção tá então é um dos tipos de teste aí eu uma das condições né que justificam essa automatizados são as situações de testes de regressão tá então um exemplo de teste de regressão você tem um determinado aplicativo que ele já funciona você já testou ele né você criou toda uma bateria de testes para ele aí de repente você tem que fazer uma atualização né
então você precisa testar para ver se essa atualização né não provocou nenhum efeito colateral vamos dizer assim né nas funcionalidades o aplicativo Então você precisa retestar ele todos os testes que você já tinha vazado né então se você tem isso de forma automatizada fica rápido de você fazer isso é uma outra situação é na questão de teste de carga né então você tem muitos aplicativos aí que você pode ter diversos usuários não é utilizando aquele aplicativo simultaneamente não então você precisa é criar situações de teste né onde você consiga simular né Várias Vários usuários né
Uma demanda muito elevada para verificar o comportamento tá esse aplicativo nessa situação é que utilizar né o mesmo teste ou scripts podem ser reaproveitados para outros dispositivos outros aplicativos né então muitas vezes você tem determinados aplicativos que eles são semelhantes você consegue fazer um reaproveitamento em outros aplicativos ou partes que já foram testes já foram realizados por um determinado aplicativo você pode aproveitar ele para outros aplicativos tá e elevar confiabilidade né quando você tem uma máquina fazendo esse teste É isso aí né eventuais erros que podem ocorrer o outro problemas causados aí por manipulação humana
tá o bom é agora que para a gente falar né dos principais testes automatizados ou as principais categorias de testes né que são utilizados aí para validação e verificação de aplicativos então a gente pode Alencar aqui né testes de desempenho em testes de interrupção testes de usabilidade testes de instalação e testes funcionais a gente vai ver cada um deles né o que eles buscam cobrir tá gente poderia elencar que outros testes Como por exemplo o teste de segurança e privacidade tá mas esses daqui são os principais que a gente vai estar olhando em mais detalhe
nessa aula e vamos falar um pouquinho dos Testes funcionais né esses testes aí eles são conhecidos às vezes como teste caixa-preta tá porque eu não tô preocupada não tô olhando para o código do aplicativo ali naquele momento né eu tô na verdade é interessado em ver como que esse aplicativo reagir não é uma determinada interação A então basicamente eu tô observando entrada e saída né assim provoca um estímulo e verifico Como que o aplicativo responde então que tipo de aspectos que eu vou estar buscando nesses testes tá então ele vai me permitir identificar erros a
interface com o usuário os erros de inicialização e término as funções incorretas ou ausentes naquele aplicativo Tá além disso né a gente pode ter uma outra categoria de teste que vai ser agora a os testes de desempenho tá então no caso dos Testes de desempenho né a gente vai verificar as pé aspectos relacionados ao que se refere né ao consumo né de recursos no dispositivo né e da eficiência na realização das tarefas de uma forma geral tá então eu vou verificar desempenho em dispositivos diferentes né porque eu faço um aplicativo Mas eu posso ter na
hora que eu vou comercializar ele né diferentes dispositivos né utilizando aquele aplicativo Então como que responde a esses diferentes dispositivos né E como que o desempenho dele Como comentei com vocês lá atrás né sobre tráfico pesado de carga né então verificarem o lado do cliente lá do Servidor nessa utiliza alguma conexão com o servidor como que ele responde né como que ele trabalha uma situação de carga né e além do consumo gerado no dispositivo móvel na conta de recurso que esse aplicativo ele está consumindo no dispositivo Moto né então quanto que ele consome recursos da
CPU de memória de armazenamento tá são questões importantes aí na hora da gente fazer um teste de verificação de desempenho é um outro teste também que é realizado né são os testes de interrupção tá então nesses testes aí a qualquer ideia né a gente testar o comportamento do aplicativo não é com relação a fatores externos alguma coisa que interrompe a execução do meu aplicativo tá durante o funcionamento então por exemplo se você tiver uma situação de interrupção devido a uma chamada telefônica né o envio SMS né É um aplicativo que tava rodando e de repente
o sistema operacional interrompeu ele né como que ele como que esse aplicativo se comporta nessa situação também esse tipo de teste vai verificar esse esse tipo de comportamento né ou não uma situação de bateria fraca né ou ainda numa situação de pouca memória né o sistema operacional a gente vai inclusive estudar quando a gente for falar da parte das activities que correspondem as telas os aplicativos né na verdade o sistema operacional ele pode decidir causar uma interrupção não é um na execução a tela de um aplicativo tá Então como que o aplicativo vai se comportar
nessas situações é bom que a gente vende com Mauro inteira né Falando de usabilidade tão com certeza os testes de usabilidade também são testes importantes aí na hora da gente verificar e validar é um aplicativo né que nem a gente tá sendo dito aqui na como um dos softwares né possíveis aí a gente utilizar para verificação de usabilidade né É urgente né que a gente veio na aula passada tá bom alguns elementos identificáveis e quais são tamanho e área de estoque lembra né só só Relembrando lá da da ONU no interior né a usabilidade tem
a ver com a experiência né Que o usuário tem né Então aquela questão que a gente viu da apresentação na então tamanho área de toque a questão do contraste que a gente comentou a marcação de conteúdo para sensibilidade né então quem a gente já tinha comentado na aula anterior né a gente tem ferramentas né no caso aqui de novo é o link foi um exemplo que a gente utilizou que podem fazer esse tipo de verificação Ah tá ó e aqui aquela questão que eu coloquei para vocês no início né da e da nossa aula que
como os habilidade ela tá relacionada muito com a experiência do usuário não tem aí empresas né que vão oferecer serviços para realização de teste utilizando humanos tá a gente vai ver isso na sequência e a gente tem também a categoria de testes de instalação né esses testes aí que eles vão buscar verificar E se o meu aplicativo consegue ser instalado com sucesso em diferentes dispositivos ver se eu consigo fazer atualizações essa ele consegue fazer atualizações com sucesso e também a parte de desinstalação mas eu consigo desinstalar esse aplicativo Se necessário tá e quando a gente
vai fazer testes automatizados é normalmente Você pode ter três tipos de abordagem inclusive uma delas eu até Adiantei para vocês no início da aula né Que hora que são na quantificação Tá mas isso tem a ver com os diferentes níveis de interação com a ferramenta de teste né então a gente tem ferramentas que praticamente você não precisa ter um conhecimento né decodificação para trabalhar com elas e para fazer teste com elas e no outro extremo né a gente tem a questão que eu comentei com você escolhe da quantificação E aí você vai ter que sentar
e você mesmo escreveu um software para fazer um determinado teste Tá então vamos lá encarar elas então a questão da quantificação da entre a criação de software para automatizar o teste Então nesse caso né Em algumas situações o código pode apresentar alguma função específica no código que o código do nosso aplicativo lá que vai demandar criação de um programa só para testar né aquela funcionalidade tá e depois a gente tem aí vamos um meio-termo são as ferramentas com scripts tá é Então apesar dessas realizarem né a etapa de teste de forma automatizada os normalmente vão
demandar um script né é basicamente um arquivo ali como instruções é um passo a passo e com parametrizações para que se esquece sejam realizados tá Oi e a gente tem as ferramentas em scripts né então para esse tipo de ferramenta nenhum conhecimento decodificação que não comentei com vocês normalmente não é necessário tá é mas ainda assim essas ferramentas vão oferecer aí algum nível de utilização de customização perdão é muito vamos falar agora aqui de algumas dessas ferramentas né que a gente encontra aí no mercado tá falando um pouquinho né das empresas que oferecem a ferramenta
ou serviço né e as características dele tá então a gente tem até sai ou né então oferece teste contínuo de aplicativos né para web imóveis por testadores humanos aquilo que a gente a comentado tá qualificados usando dispositivos reais bom então a gente tem arco Robson né é uma plataforma na nuvem tá que fornece acesso a dispositivos reais para executar testes manuais e automatizados em aplicativos Android e IOS nativos web e híbridos tá Não se preocupe muito com esse nativo webs nós vamos ter uma aula só para falar É desse tipo de aplicativo nosso aplicativos para
dispositivos móveis para smartphones Ok é Além disso não é a partir do teste manual e um dispositivo né a estrutura de teste de inteligência artificial da COB Tom ela permite né executar automaticamente o mesmo teste e outros dispositivos reais vocês que acontece você faz um primeiro teste como se fosse um lugar sem nenhum dispositivo real fica remoto para você testar aí você tem isso disponível para teste e você tem a possibilidade né de uma vez feito esse teste de forma manual ele tem um algoritmo que consegue criar uma rotina automatizada para desenvolver realizar novamente a
si mesmo teste tá e ó E além disso na geração automatizada de casa de testes A partir dessa seção manual tá então eu queria né outras pode criar outros testes a partir desse primeiro teste aí que foi inserido Oi gente tem a Cerberus teste tá plataforma de alta automatização de teste open-source está suporta testes da web mobile desktop e não requer habilidade desenvolvimento é aquele caso que a gente comentou o último né que eu não preciso de scripts não preciso de nada tá Não tenho não precisa ter um grande conhecimento ou um conhecimento prévio em
codifi cação e depois a gente tem a teste conflitos né que dessa aplicativo de desktop web Imóveis tá E aqui também não tem suporte para aplicativos mais voltados para a área corporativa na frente Sat hora cor né é uma outra questão que a bacana também que eu queria trazer para vocês quando a gente está falando de desenvolvimento especificamente para plataforma Android Então imagina que você desenvolver um aplicativo E aí você vai pegar esse aplicativo e vai publicar ele lá na Google Play né para comercializar esse aplicativo né esse é o caminho normalmente não sei fazer
um desenvolvimento aí você pode eventualmente publicar ele na Google Play pra que ele fica disponível aí as pessoas possam acessar ou comprar ele se existe algum custo mas é esse é um serviço que o Google Play disponibiliza Então você tem aqui né é um pré-teste antes de lançamento onde ele gera para você né um relatório que traz exatamente né ele faz esses peço para você e que apresenta na que tá sendo dito aqui né um relatório de pré-lançamento tá é em curta essas para problemas estabilidade de compatibilidade do Android a acessibilidade vulnerabilidade de segurança que
a gente comentou rapidamente Tá além de questões de privacidade né então isso daí algo que se você tiver desenvolvendo uma plataforma android Vamos fazer um plus né que você tem na hora que você vai publicar né o seu seu aplicativo né antes do lançamento da comercialização aí aí eventualmente você pode fazer algum ajuste tá e é que só lembrando né vimos na aula anterior né que a ferramenta Lynch pode ser utilizada também para testes automatizados tá só Relembrando a gente acabou falando duas vezes aqui ao longo da aula mas tá aqui de novo né para
gente lembrar que a gente tem também essa ferramenta que eu não preciso chegar pública na nuvem né ela disse eu posso fazer verificações aí na plataforma android Tá ok uma pessoal é então era isso eu queria contar para vocês né mostrar para vocês um pouquinho sobre os testes automatizados para aplicativos móveis né aplicativos para dispositivos móveis a importância deles né e o que a gente tem aí em termos de testes e disponibilidade em termos de serviços e empresas que é podem realizar esse tipo de teste de validação né para aplicativos para isso que eu tinha
para contar para vocês e até uma próxima ao e [Música] E aí [Música] E aí [Música] [Música]