C'est à ce sujet que nous avons dédié la réunion des développeurs Android et des testeurs mobiles lors du meetup Android Paranoid et discuté:
- Comment un développeur peut-il stabiliser un projet à l'aide de tests?
- Comment un développeur peut-il aider un testeur?
- Comment choisir le meilleur outil pour améliorer la qualité du développement?
Les codes horaires sont apposés, bienvenue sous le chat.
Stabilité 3d
Vladimir Genovich, programmeur principal (Yandex.Money)
J'ai commencé à écrire des tests assez tard. C'est parce que dans de nombreux matériaux de test, un exemple conditionnel ressemble à "assertEquals (2 + 2, 4)", et ensuite vous regardez votre code sans savoir par quoi commencer. Et puis le jour est venu où sur un nouveau projet j'ai décidé d'écrire le code pour qu'il soit mieux préparé pour les tests. Ensuite, j'ai compris pourquoi certains tests n'aident pas et comment l'éviter, puis j'ai appris à appliquer tout cela au code hérité.
Le but du rapport est de montrer aux développeurs (nouveaux venus dans les tests) comment les tests peuvent être implémentés dans l'ancien et comment ils aideront à mettre le projet en ordre en termes de stabilité. Et en général, je partagerai mes propres pratiques qui vous aideront à écrire un meilleur code.
Timecodes
0:20 - Comment l'histoire des tests a commencé
1:46 - Préparation de notre code pour les tests. Fonctions pures
3:02 - Et les legas? Approche 3D: prouver, faire confiance, admettre.
3:40 - Prouver que le code fonctionne avec des tests
5:00 - Tester des fonctions pures sur une plage de valeurs d'entrée
6:30 - Pourquoi ne pas utiliser de valeurs aléatoires
8:12 - Comment choisir des plages de valeurs pour tester
10:39 - Quand Unité -les tests peuvent ne pas aider?
11:36 - Faites confiance à vos types de données et au code vérifié
12:48 - Enveloppez les primitives dans des objets pour réduire les options possibles
14h05 - Méthodes d'usine pour créer des objets
15h08 - Soit le concept
16h44 - 2 cas pour tester les méthodes d'usine
17h43 - Le code couvert par les tests fonctionne, mais l'application plante: pourquoi?
18:09 - Supposons que les systèmes externes ne fonctionnent pas correctement
18:50 - Soit pour la protection
19:23 - Créer des pipelines "propres" de l'entrée à la sortie
21:20 - Pourquoi écrire autant de tests, ça marche toujours?
22:28 - En résumé: prouvez, faites confiance, admettez.
Comment simplifier la vie d'un testeur mobile
Dmitry Zhakov, testeur (Yandex.Money)
Dans notre entreprise, le développement mobile et les tests fonctionnent comme un tout, nous faisons de notre mieux pour nous entraider. Et nous pouvons dire avec confiance que vous pouvez développer non seulement des fonctionnalités dans l'application! En tant que développeur, vous pouvez participer aux tests, ce qui augmentera la vitesse de vérification du produit. Dans mon exposé, je vais examiner les méthodes qui fonctionnent dans Yandex.Money. Ils vous permettent de réduire le nombre d'étapes lors des tests ou de la préparation des données.
Timecodes
1:55 - Où commence le chemin d'un testeur? Méthodes de test
2:15 - Astuce 1. Journalisation: ce qui est nécessaire et que faire s'il y a trop de logs
4:03 - Journalisation lors de la vérification des événements utilisateur
7:00 - Vérification des événements de comportement des utilisateurs: Appium et Espresso
10:29 - Astuce 2. S'occuper des matchers et des accès aux éléments de l'interface utilisateur
12h35 - Chuck: un outil pour un accès rapide aux informations
13h50 - Menu secret pour le développeur et QA
16h48 - Lancement de l'application
18h42 - Comment identifier l'appareil dans le "zoo" mobile?
23:12- Environnement de test: serveur de test, usurpation de trafic et système de formation des utilisateurs
29:56 - En résumé: comment le développeur peut aider le testeur
Le cadre de test d'interface utilisateur le plus en vogue en 2k20
Dmitry Manko, développeur Android (Citymobil)
Tôt ou tard, tous les développeurs seront confrontés au fait qu'ils souhaitent améliorer la qualité par des moyens automatisés. Maintenant, le marché du développement Android regorge d'excellents outils et vous devez choisir le meilleur. Dans le rapport, je présenterai un aperçu des frameworks populaires sur un petit cas de test, comment différents frameworks gèrent des choses simples et non standard.
Timecodes
0:32 - Qu'est-ce que le test?
1:05 - La première étape du test: choisir un framework
1:55 - PageObject: l'un des critères de sélection
3:55 - Vérification des frameworks pour UI-test et test-case (exemple avec vérification d'un numéro de téléphone)
6:19 - 1 test pour Espresso : l' attente et les demandes réelles
11:52 - 2 tests sur UIAutomator
14h08 - 3 tests sur Barista
15h45 - 4 tests sur Kakao: caractéristiques distinctives
17:28 - 5 Test Kaspresso: 3 heureux Drakes.
20h49 - En résumé: ce qui doit être fait lors du choix d'un cadre.