Wer schreibt die Testfälle für Ihren Kunden, wenn es Zeit für den Client Acceptance Test ist?

Diese Frage ist kürzlich in meiner Organisation aufgetaucht. Wenn es für den Kunden an der Zeit ist, entweder eine große E-Commerce-Implementierung oder eine kleinere Funktionserweiterung zu prüfen und zu akzeptieren, wird Ihr QA-Team dann die Testfälle schreiben, die Ihr Kunde verwenden kann, oder werden Sie dies Ihrem Kunden überlassen?

Die Sorge ist, dass der Kunde entweder nicht die Zeit oder den Fokus hat, die Testfälle zu schreiben und einen vollständigen Systemtest durchzuführen. Aber vielleicht ist das in Ordnung, wenn wir uns einig sind, dass der Zweck des Client Acceptance Testing darin besteht, dass der Kunde auf die Art und Weise herumstochert, an die er / er gewöhnt ist, und sieht, ob etwas kaputt geht.

Was haben Sie getan?

Antworten (1)

Kunden- (oder Benutzer-) Akzeptanztests (CAT oder UAT) sind eine kritische Phase von Systemimplementierungsprojekten und sollten gut geplant, strukturiert und dokumentiert werden.

Über Testfälle (oder Testskripte):

  • Testfälle sind detaillierte Schritt-für-Schritt-Anleitungen, die es ermöglichen, zu validieren, wie die Funktionalität aus Sicht des Endbenutzers funktioniert .
  • Sie sollten alle Benutzeranforderungen im Rahmen des Projekts sowie die vom System unterstützten Geschäftsprozesse abdecken.
  • Der beste Weg, einen Testfall zu schreiben, besteht darin, ihn auf einem Geschäftsprozess zu basieren (z. B. eine Bestellung aufzugeben) und die zugehörigen Anforderungen als Teil dieser Prozessausführung zu validieren (z. B. die Produktspezifikation als Teil der Bestellung zu ändern).

Wer sollte Testfälle schreiben:

  • Testfälle sollten von Projektteammitgliedern geschrieben werden, die sowohl die Funktionalitäten des Systems als auch die Geschäftsprozesse des Kunden gut beherrschen . Abhängig von Ihrer Projektteamstruktur kann dies also ein Business Analyst oder ein funktionaler Leiter sein (oder sogar ein Entwickler bei kleinen Projekten, obwohl dies weniger üblich ist). Bei großen Systemimplementierungen gibt es spezielle Testteams, die die Aufgabe haben, die Skripte zu schreiben sowie die Testzyklen vorzubereiten und zu verwalten.
  • Normalerweise ist es nicht der Kunde oder Endbenutzer, der die Testskripte schreibt, es sei denn, der Kunde hat dem Projekt tatsächlich Ressourcen dafür zugewiesen. In jedem Fall sollte die Person, die den Testfall schreibt, nicht die Person sein, die den Test durchführt, um die Integrität des Testprozesses zu wahren .

Zusätzliche Empfehlungen:

  • Lassen Sie Ihren Kunden nicht los : Ich rate Ihnen dringend davon ab, einem „Do-as-you-like“-Test zuzustimmen. Obwohl dies aus einer guten Absicht stammt (dem Kunden Freiheit zu geben), wird Sie dies wahrscheinlich in eine problematische Situation bringen: Das System wird nicht nur nicht gründlich getestet, sondern Sie werden wahrscheinlich sehen, dass Ihr Kunde Probleme und Fragen aufwirft, die nicht gültig sind (z. B. „das geht nicht“, weil der Kunde nicht weiß, wie man es benutzt, oder „das geht nicht X“, weil es von vornherein keine Voraussetzung war).
  • Führen Sie immer Regressionstests durch : Wenn Sie ein neues System bereitstellen oder ein bedeutendes Upgrade durchführen, müssen Sie die gesamte Anwendung testen. Für kleine Verbesserungen ist es jedoch nicht erforderlich, den gleichen Aufwand in das Testen zu stecken. Sie sollten auf neue/geänderte Funktionalitäten testen (entweder durch neue Testfälle oder vorhandene aktualisierte Testfälle) und auch kritische „normale“ Funktionalitäten testen, um sicherzustellen, dass Verbesserungen die normale Nutzung des Systems nicht beeinträchtigt haben. Daher ist es eine gute Idee, unter Ihren Testskripten eine Reihe kritischer Testfälle zu identifizieren, die Sie in Zukunft für Ihre Regressionstests verwenden können.
  • Optimieren Sie den Aufwand für Ihre Testfälle : Das Schreiben von Testfällen kann je nach Komplexität und Umfang der entwickelten Funktionalitäten einige Zeit in Anspruch nehmen. Da sie jedoch dazu bestimmt sind, die Verwendung des Systems zu validieren, können sie auch als Grundlage für die Entwicklung von Schulungsmaterialien verwendet werden (insbesondere, wenn sie auf der Grundlage von Geschäftsprozessen geschrieben wurden). Dies ist also eine Möglichkeit, den Aufwand für Testskripte für einen anderen Bereich Ihrer Systemimplementierung zu nutzen.
+1 Tolle Antwort! Nur eine Sache ist hinzuzufügen - Machen Sie die Testfälle zu einem Teil des Abmeldeprozesses. Sobald die Testfälle bestanden sind, ist die Entwicklungsarbeit abgeschlossen und der Kunde kann sie abzeichnen (und Sie können bezahlt werden).
Lucas, du hast absolut Recht, die CAT-Freigabe durch den Kunden sollte eine Bedingung für den Go-Live sein.