Smart Integration.

Exzellente eCommerce Strategien, Konzepte und Projektpläne werden professionell und mit garantierter Qualität umgesetzt.

Build

Smart eCommerce Testautomation" (SeCTA).

Bei der Implementierung und der laufenden Weiterentwicklung ist es wichtig, einen festen, definierten Status der eCommerce Software zu kennen, so z. B.: Ist die jetzige, neue Softwareversion besser als die alte Version? Oder welche Qualität hat eine neue Software-Version überhaupt? Automatische Tests, die jeden Tag zu definierten Zeiten die Software testen, werden Regressionstest genannt. Sie machen Software bezüglich ihrer Qualität messbar und zeigen mögliche Nebeneffekte von vorgenommenen Änderungen direkt und erkennbar an. Sie dienen als direkte Rückkopplung für Entwickler und für Tester, die unter Umständen nicht in der Lage sind, das Gesamtsoftwaresystem auf einmal zu überschauen, sowie zur Erkennung von Nebeneffekten und Folgefehlern. Die Testautomatisierung liefert eine Metrik, die Anzahl erfolgreicher Testfälle pro Testlauf.

Die Testautomatisierung beantwortet also Fragen wie: Wann ist eine neue Anforderung vollständig erfüllt? Wann ist die Entwicklung fertig? Hat ein behobener Fehler eine Auswirkung auf bestehende Software, d.h. bewirkt eine Änderung des Verhaltens der Software? Was ist nun wirklich an neuer Funktionalität und Fehlerkorrekturen in der Software? Lässt sich der Liefertermin der Software noch einhalten, wenn eine Einschätzung der momentanen Qualität der Software nicht möglich ist? Oder: Wann ist ein Softwarefehler behoben? Die Antwort auf diese Frage ist: „Der Softwarefehler ist dann behoben, wenn alle dazu existierenden Testfälle und die für den Softwarefehler selbst geschriebenen Testfälle erfolgreich beendet wurden.“ Die Testautomatisierung ist ein Schlüssel, um die Qualität von Software zu steigern oder eine definierte Qualität zu garantieren.

Die Einordnung der Teststufen, auch Testzyklen genannt, folgt der Komplexität: von der einzelnen Komponente bis zum komplexen Gesamtsystem werden i.d.R. 3 bis 4 Teststufen definiert:

1

Der Komponententest, auch Modultest oder Unittest genannt, ist ein Test auf der untersten Ebene der einzelnen Module. Testgegenstand ist die Funktionalität innerhalb einzelner abgrenzbarer Teile der Software (Module oder Units). Testziel dieser durch den Softwareentwickler durchgeführten Tests ist der Nachweis der technischen Lauffähigkeit und korrekter fachlicher (Teil-) Ergebnisse.

2

Der Integrationstest testet die Zusammenarbeit voneinander abhängiger Komponenten. Der Testschwerpunkt liegt auf den Schnittstellen der beteiligten Komponenten und soll korrekte Ergebnisse über komplette Abläufe hinweg nachweisen.

3

Der System-/Webtest ist die Teststufe, bei der das gesamte System gegen die gesamten Anforderungen getestet wird. Der Test findet auf einer Testumgebung statt und wird mit Testdaten durchgeführt. Die Testumgebung soll die Produktivumgebung simulieren, d. h. ihr möglichst ähnlich sein.

4

Der Abnahmetest oder auch User Acceptance Test (UAT) ist das Testen der gelieferten Software durch den Kunden.

Die SeCTA Architektur ist ausgelegt für Multi-Mandanten eCommerce-Plattformen. Sie setzt für die System-/Webtests auf das Werkzeug Selenium, für Visual Tests auf die Werkzeuge BackStopJS/CasperJS, für Komponententests auf JUnit. Kern des Testautomaten ist ein Jenkins Server, der in der Google Cloud läuft, und nach Bedarf Test Docker Container zur Testdurchführung erzeugt und löscht. Die massiv parallelen Test Docker Container erlauben eine sehr schnelle Durchführung von Massentests und beschleunigen den Entwicklungsprozess erheblich. Die Ergebnisse der Tests, wie Selenium Report, Visual Reports, CSV Reports, werden abschließend auf einem Reporting Server gesammelt.

Die Vorteile der Testautomatisierung auf der Basis von SeCTA sind:

  • SeCTA beschleunigt den Entwicklungsprozesses.  
  • SeCTA ist massiv parallel. Massentests können extrem schnell durchgeführt werden.
  • SeCTA ist modular aufgebaut. Hohe Wiederverwendbarkeit der Testkomponenten in allen Teststufen.
  • "Test first" und "continuous Testautomation" nutzen Testfälle durchgängig bis zum endgültigen Systemtest.
  • Kurzfristige Absicherung von Änderungen während des Produktivbetriebes.
  • Zeitdruck und Risiko vermindern sich in späten Projektphasen.

Kontakt

Fordern Sie uns.

Smart Commerce SE
Leutragraben 1
07743 Jena
Germany

Telefon: +49 3641 3 16 10 20
E-Mail: info@smartcommerce.biz