Appium vs Espresso für den automatisierten Test-Frameworks
Letzten paar Wochen, ich war mit Appium(python)
für android testen, aber gestern haben wir beschlossen, zu verschieben, zu Expresso(Java)
für die automatisierte Prüfung. Es gibt einige Gründe, warum wir machen diese Verschiebung:
- Wollen wir skalieren unsere automatisierte Tests, und es sind viele features nicht vorhanden sind, in appium.
- Dies ist eines der neuesten Test-framework für android, und hat schöne Abwärtskompatibilität.
- Kleine API und sehr einfach anzupassen.
Habe ich gelesen, für Espresso, aber ich finde nicht alles toll, Wenn ich Vergleiche es mit Appium. Ich bin ein Python/R developer
so vielleicht gibt es einige Punkte, die ich nicht imstande bin, zu verstehen. Möchte jemand helfen mich zu verstehen, wenn der übergang zu dieser neuen Test-framework wird gut sein für die Zukunft? Mir fehlt hier das größere Bild, und jede Hilfe wäre sehr geschätzt werden.
vergessen Sie nicht, teilen Sie Ihre Erfahrungen/Eindrücke
InformationsquelleAutor python | 2016-02-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das ist wahr, Espresso unterstützt keine Tests außerhalb der app, aber es funktioniert im tandem mit UiAutomator. So, in der gleichen test-code, Sie können schreiben, Espresso sowie UiAutomator und so test in als auch außerhalb der app. Verweis: plus.google.com/+AndroidDevelopers/posts/WCWANrPkRxg
Sie können Espresso Absicht, um zu testen, Kamera-und Handy - dialer Tätigkeit außerhalb der app.Das ist es, was ich gemeint in meiner Antwort.
Einer der wichtigsten Punkte meiner Meinung nach: Man kann einfach nur testen, Ende-zu-Ende / on integration level mit Appium. Diese neigen dazu, indeterministic, was die tests mehr oder weniger unbrauchbar meiner Meinung nach. Ausfälle des tests sind schwer zu untersuchen. Außerdem: Mit komplexen workflows, oder mit einer zunehmenden Anzahl von tests, die Sie einfach nicht skalieren. Die Lösung wäre zu testen-Komponente-Weise (z.B. pro-Aktivität), die ist viel schneller, zuverlässig, nachvollziehbar, anpassbar (mochable), und so weiter. Sie können nicht tun, mit Appium.
InformationsquelleAutor anuja jain
Können Sie gehen, um Espresso, wenn Sie kleben nur auf Android-Automatisierung und haben keine Ahnung von Automatisierung iOS.
AFIKW, Espresso Bedürfnisse source-code der app, um diese zu automatisieren.
Vorteil ist, es ist direkt open-Source von google.
Aber meine gehen, ist zu gehen mit Appium da es ein großes open-Source-community mit großen Verbesserungen auf den Weg, und leicht zu automatisieren, die mit einer beliebigen Programmiersprache und unnötig zu sagen, es unterstützt sowohl Android und iOS.
Können Sie klären, was Sie bedeutet "die große Verbesserungen auf dem Weg"? Ich war nicht in der Lage viel zu finden von Bedeutung.
ich denke, appium Unterstützung sehr niedrigen api-Ebene noch nun seiner nur
5.0
, das ist etwas, was nicht gut ist.InformationsquelleAutor karthick23
Ich bin damit einverstanden, dass Espresso kann sehr effektiv sein, wenn es um Android-Tests allein. Zum Beispiel, es kann nur die Aktivität, die es testen, das ist toll.
Immer noch, ich halte mich an den Appium, denn es hat die gleichen API für beide AndroidDriver und iOSDriver. Gewöhnlich Android-apps sind begleitet von iOS-apps, und wenn du verantwortlich bist für das UI-automation, die Sie zu treffen haben insgesamt Kosten in Rechnung.
Appium hat folgende Vorteile gegenüber der Plattform-spezifische Lösung:
Der größte Nachteil von Appium ist die Geschwindigkeit der längere test-Szenarien und einige Schwierigkeiten bei der Lokalisierung Elemente, aber dennoch ist es meine Wahl.
Auf der Seite der Hinweis, ich möchte hinzufügen, dass Sie sollten nicht vergessen, über die test-Pyramide bezieht sich auf die test-Automatisierung. Bitte halten Sie die balance zwischen Unit-Tests, Integrationstests und UI-tests http://martinfowler.com/bliki/TestPyramid.html
InformationsquelleAutor kiedysktos
Der Hauptunterschied zwischen den beiden ist,
Espresso-test ist in der Anwendung und es wird bewusst in allen Schichten der Anwendung. So können Sie mock bestimmten Schichten der app, mehr wie ein white-box-Tests
Appium-tests sind black-box-tests wissen, nur der UI-Schicht von der app. Hauptvorteil ist für cross-Plattform-Tests.
InformationsquelleAutor Santhosh Kumar