É a este tópico que dedicamos o encontro de desenvolvedores Android e testadores móveis no Android Paranoid Meetup e discutimos:
- Como um desenvolvedor pode trazer estabilidade a um projeto usando testes?
- Como um desenvolvedor pode ajudar um testador?
- Como escolher a melhor ferramenta para melhorar a qualidade do desenvolvimento?
Os códigos de tempo estão afixados.
Estabilidade 3d
Vladimir Genovich, Programador Líder (Yandex.Money)
Comecei a escrever testes bem tarde. Isso ocorre porque em muitos materiais de teste um exemplo condicional se parece com "assertEquals (2 + 2, 4)", e então você olha para o seu código e não sabe o que começar. E então chegou o dia em que, em um novo projeto, decidi escrever o código para que ficasse melhor preparado para o teste. Então descobri por que alguns testes não ajudam e como evitá-lo, e então aprendi como aplicar tudo isso ao código legado.
O objetivo do relatório é mostrar aos desenvolvedores (iniciantes no teste) como o teste pode ser implementado no legado e como ele ajudará a colocar o projeto em ordem em termos de estabilidade. E, em geral, compartilharei minhas próprias práticas que o ajudarão a escrever um código melhor.
Timecodes
0:20 - Como a história dos testes começou
1:46 - Preparando nosso código para teste. Funções puras
3:02 - E quanto às legas? Abordagem 3D: provar, confiar, admitir.
3:40 - Prove que o código funciona com testes
5:00 - Testando funções puras em uma faixa de valores de entrada
6:30 - Por que você não deve usar valores aleatórios
8:12 - Como escolher faixas de valores para teste
10:39 - Quando Unidade -Os testes podem não ajudar?
11:36 - Confie em seus tipos de dados e código verificado
12:48 - Envolva primitivos em objetos para reduzir as opções possíveis
14:05 - Métodos de fábrica para criar objetos
15:08 - Qualquer um dos conceitos
16:44 - 2 casos para testar métodos de fábrica
17:43 - O código coberto pelos testes funciona, mas o aplicativo trava: por quê?
18:09 - Suponha que sistemas externos podem não funcionar corretamente
18:50 - Tanto para proteger
19:23 - Criar pipelines "limpos" da entrada para a saída
21:20 - Por que escrever tantos testes, ainda funciona?
22:28 - Resumindo: provar, confiar, admitir.
Como tornar a vida mais fácil para um testador móvel
Dmitry Zhakov, testador (Yandex.Money)
Em nossa empresa, o desenvolvimento e os testes de dispositivos móveis funcionam como um todo, fazemos o nosso melhor para ajudar uns aos outros. E podemos afirmar com segurança que você não poderá desenvolver apenas funcionalidades no aplicativo! Você, como desenvolvedor, pode ajudar nos testes, o que aumentará a velocidade de verificação do produto. Em minha palestra, irei considerar os métodos que funcionam no Yandex.Money. Eles permitem que você reduza o número de etapas durante o teste ou preparação de dados para ele.
Timecodes
1:55 - Onde começa o caminho de um testador? Métodos de teste
2:15 - Dica 1. Registro: o que é necessário e o que fazer se houver muitos registros
4:03 - Registro ao verificar eventos do usuário
7:00 - Verificar eventos de comportamento do usuário: Appium e Espresso
10:29 - Dica 2. Cuidando de matchers e acessos a elementos de IU
12:35 - Chuck: uma ferramenta para acesso rápido às informações
13:50 - Menu secreto para o desenvolvedor e QA
16:48 - Lançamento do aplicativo
18:42 - Como identificar o dispositivo no "zoológico" móvel?
23:12- Ambiente de teste: servidor de teste, falsificação de tráfego e sistema de treinamento de usuário
29:56 - Resumindo: como o desenvolvedor pode ajudar o testador
A estrutura de teste de IU mais moderna em 2k20
Dmitry Manko, desenvolvedor Android (Citymobil)
Mais cedo ou mais tarde, todos os desenvolvedores serão confrontados com o desejo de melhorar a qualidade por meios automatizados. Agora o mercado de desenvolvimento para Android está repleto de ótimas ferramentas, e você precisa escolher a melhor. No relatório, fornecerei uma visão geral das estruturas populares em um pequeno caso de teste, como diferentes estruturas lidam com coisas simples e não padronizadas.
Timecodes
0:32 - O que é teste?
1:05 - A primeira etapa do teste: escolhendo uma estrutura
1:55 - PageObject: um dos critérios de seleção
3:55 - Verificando estruturas para teste de IU e caso de teste (exemplo com verificação de um número de telefone)
6:19 - 1 teste para Espresso : expectativa e solicitações reais
11:52 - 2 teste no UIAutomator
14:08 - 3 teste no Barista
15:45 - 4 teste no Kakao: características distintivas
17:28 - 5 teste Kaspresso: 3 Drakes felizes.
20:49 - Resumindo: o que precisa ser feito na hora de escolher um framework.