Dieses Repository enthält eine Interview-Challenge für die Position des Senior QA Automation Engineers bei Ista Express.
Das Ziel dieser Challenge ist es...
- deinen Ansatz für eine elegante E2E-Testlösung zu sehen
- deine Vision einer perfekten CI/CD pipeline zu erfahren
- deine QA-Automatisierungs-Skills zu testen
Als Ista Express wollen wir unsere UI Tests automatisieren um unseren Entwicklungsprozess zu beschleunigen und die Qualität gleichbleibend zu gewährleisten. Diese Tests sollen in unseren Entwicklungsprozess (Github flow) integriert werden.
Dieses Repository enthält eine einfache vue/node web App die stellvertretend für unsere UI's getestet werden soll. In dieser Anwendung können Kunden ihre Termine einsehen und verschieben.
- Ein Nutzer kann seinen Termin einsehen mit den Daten
- Aufgabe
- Tag
- Startzeit
- Endzeit
- Techniker
- Name
- Alter
- Geschlecht
- Wenn der Nutzer auf "Termin verschieben" klickt, dann werden ihm 3 neue Optionen angeboten, von denen er sich eine aussuchen kann. Nachdem er seine Option ausgewählt hat, wird ihm von da an nur noch dieser Neue Termin angezeigt.
- Entwickle ein E2E Test setup, mit dem die Akzeptanzkriterien abdeckt werden.
- Mache dir Gedanken zu deinem idealen CI/CD Konzept in Hinsicht auf die QA Automation und Dokumentiere sie in einer Markdown Datei. Berücksichtige dabei, dass die Tests auch in die Pipelines der Backendservices integriert werden sollten.
Bonus Punkte
- Baue mit Github Actions eine pipeline um die Tests auszuführen, wenn ein Pull Request erstellt wird.
- Berücksichtige, wie das System skaliert, wenn die Anzahl der Tests sich erhöht.
Um mit der Bearbeitung der Challenge anzufangen, forke das Repo in deinen persönlichen Bereich.
npm run setup
Dieses Kommando startet den Client und den Server gleichzeitig. Dafür wird concurrently benutzt.
npm run start