Tutoriel sur l'outil de test Calebasse pour Android

Quโ€™est-ce que la calebasse ?

Calebasse est une acceptation open source Tests framework qui vous permet d'รฉcrire et d'exรฉcuter des tests pour iOS et Android Applications.

Il s'agit d'un framework d'interface utilisateur automatisรฉ qui permet d'รฉcrire des tests en Ruby en utilisant Cucumber.

Calebash fonctionne en permettant des interactions automatiques de l'interface utilisateur au sein d'une application mobile, telles que l'appui sur des boutons, la saisie de texte, la validation de rรฉponses, etc. Il peut รชtre configurรฉ pour s'exรฉcuter sur diffรฉrents Android et les appareils iOS, qui fournissent des commentaires et des validations en temps rรฉel.

Pourquoi Calebasse Automation ?

Avantages Dรฉsavantages
Cela contribue ร  augmenter le dรฉbit/productivitรฉ. Des compรฉtences sont requises pour rรฉdiger les scripts de tests dโ€™automatisation.
Qualitรฉ amรฉliorรฉe ou prรฉvisibilitรฉ accrue de la qualitรฉ Le dรฉbogage du script de test est un problรจme majeur.
Robustesse (cohรฉrence) amรฉliorรฉe des processus ou des produits. La maintenance des tests est coรปteuse dans le cas des mรฉthodes de lecture.
Cohรฉrence accrue de la production et rรฉduction des coรปts et dรฉpenses de main-dโ€™ล“uvre La maintenance des fichiers de donnรฉes de test est difficile si le script de test teste plus d'รฉcrans

Calebasse et BDD

  • La calebasse est Dรฉveloppement axรฉ sur le comportement (BDD). C'est la mรชme chose que le dรฉveloppement pilotรฉ par les tests (TDD), mais au lieu de crรฉer des tests pour dรฉcrire la forme des API, le comportement de l'application est spรฉcifiรฉ.
  • Le BDD est un processus dans lequel plusieurs parties prenantes interviennent pour crรฉer une comprรฉhension commune de ce qui doit รชtre construit.
  • BDD est utile pour crรฉer le bon logiciel et le concevoir du point de vue du propriรฉtaire de l'entreprise.

Calebasse et BDD

Comment installer Calebasse

Partie I) Installer Java JDK โ€“ Reportez-vous ร  ce guide โ€“ /install-java.html

Partie II) Tรฉlรฉchargez et installez Ruby.

ร‰tape 1) Tรฉlรฉchargez Ruby ร  partir de l'URL http://rubyinstaller.org/downloads

Installer Calebasse

ร‰tape 2) Ouvrez l'exe, suivez les instructions ร  l'รฉcran. Une fois l'installation terminรฉe, vous verrez l'รฉcran suivant. Cliquez sur Terminer.

Installer Calebasse

Dรฉmarrer l'invite de commande avec Ruby activรฉ Windows 10 et tapez ci-dessous Commande.

ruby โ€“v

Installer Calebasse

Partie III) Tรฉlรฉcharger et installer Android

ร‰tape 1) Tรฉlรฉcharger Android Studio au https://developer.android.com/studio

Installer Calebasse

ร‰tape 2) Ouvrez l'exe, suivez les instructions ร  l'รฉcran et terminez l'installation. Cliquez sur le bouton Terminer une fois terminรฉ

Installer Calebasse

Partie IV) Installer Calebasse Android

ร‰tape 1) Dans le type de console installez calebasse-android. L'installation va dรฉmarrer et prendra un certain temps pour se terminer

Installer Calebasse

ร‰tape 2) Une fois l'installation terminรฉe, tapez calebasse-version Android

Installer Calebasse

Travailler avec Calebasse

Ouvrez le dossier ยซ calebasse-android-0.9.0 ยป. Il rรฉside dans le chemin C:\Ruby23\lib\ruby\gems\2.3.0\gems\calabash-android-0.9.0. Les noms des dossiers changeront en synchronisation avec la version Ruby/Calebash que vous installez sur votre ordinateur.

Ouvrez le dossier du squelette de fonctionnalitรฉs. Recherchez ce cadre de base.

Travailler avec la calebasse

  • Le fichier *.feature contient des scรฉnarios que nous allons automatiser.
  • La mรฉthode utilisรฉe par le fichier de fonctionnalitรฉs est รฉcrite dans le fichier *.rb dans le dossier ยซ step_definitions ยป.
  • Les mรฉthodes courantes, la configuration de l'environnement, l'installation de l'application et les hooks doivent รชtre placรฉs dans le dossier ยซ support ยป.

Dรฉmissionnez et crรฉez l'application

  • Calabash-android dรฉmissionne *.apk
  • Construction Calebasse-Android *.apk

Dรฉmissionnez et crรฉez l'application

Connectez l'appareil au systรจme/Ouvrez l'รฉmulateur

Vรฉrifiez le pรฉriphรฉrique connectรฉ. Tapez la commande

adb devices

La liste des appareils connectรฉs doit รชtre affichรฉe.

Attachez l'appareil au systรจme/ouvrez l'รฉmulateur

Comment trouver le localisateur d'รฉlรฉments

  • Ouvrez la console. Tapez la commande.
    calabash android console "APK Path"
    start_test_server_in_background
  • La commande ci-dessus lance lโ€™application sur lโ€™appareil. Pour trouver le localisateur d'รฉlรฉments, utilisez la commande suivante.
    query "*"

    Trouver le localisateur d'รฉlรฉments

Cela affichera tous les localisateurs d'รฉlรฉments sur l'รฉcran actuel.

Crรฉation de nouveaux scripts

Ouvrez le fichier de fonctionnalitรฉs et les lignes suivantes

Crรฉation de nouveaux scripts

Feature: Login feature
  Scenario: As a valid user I can log into my app
    When I press "Login"
    And I enter my username 
    And I enter my password
    Then I see "Welcome to coolest app ever"

Ouvrez le fichier de dรฉfinition d'รฉtape et dรฉfinissez la mรฉthode dans le fichier *.rb.

Crรฉation de nouveaux scripts

Given /^I am on the login windows$/ do
   wait_for(:timeout =>100) { element_exists("* id:'loginInput;")}
   check_element_exists("* id:'loginInput;")
end

Exรฉcuter le projet de test

Pour exรฉcuter le projet de test, utilisez la commande ci-dessous

calabash-android run "APK Path" "feature file Path" โ€“ tags "tag name"

Exรฉcuter le projet de test

Exรฉcuter le projet de test

Rรฉsumรฉ

  • Calebasse est un nouveau framework open source, qui permet d'automatiser et de tester n'importe quel iOS ou Android app.
  • Pour travailler avec Calebasse, le test doit รชtre รฉcrit en Ruby en utilisant Cucumber.
  • Il utilise le concept de dรฉveloppement pilotรฉ par le comportement (BDD)
  • Il automatise le code en divisant son travail en quatre couches suivantes :
  • Premiรจre couche
  • Couche mรฉtier
  • Couche technologique
  • Couche finale

Rรฉsumez cet article avec :