"Testerkalender" für November. Angemessene Paartests

Die Autoren des November " Testerkalenders " waren Olya Fazulzyanova, ein Tester von Kontur.Ekterna, und Olya Izyuryeva, ein Tester von Kontur. Billing und der Organisator eines Testerkurses. Die Mädchen sprachen über Paartests, über die Aufgaben, die es zu lösen hilft, und gaben ein Beispiel für die erfolglose Anwendung der Praxis.



In der XP- Methodik gibt es eine Praxis - Paarprogrammierung. Viele Quellen haben über die Masse seiner Vorteile geschrieben: hohe Qualität des Codes, Austauschbarkeit von Entwicklern usw.


Wenn die Paarprogrammierung so effektiv ist, warum dann nicht ähnliche Prinzipien beim Testen anwenden? Ja, das ist möglich, Paartests gibt es schon lange und sie haben sich bewährt. Vergessen Sie jedoch nicht, dass jede Übung nur ein Werkzeug zur Lösung von Problemen ist.


Wikipedia hat nicht den Begriff "Paartest", aber es gibt eine Definition für die Paarprogrammierung, die als Grundlage dienen kann. Dann bekommen wir unserer Meinung nach folgendes.


Das Testen von Paaren ist eine Technik, bei der das Testen einer einzelnen Funktionalität von mehreren Personen am selben Arbeitsplatz durchgeführt wird. Ein Tester („Blei“) steuert den Computer, der zweite („Navigator“) überwacht kontinuierlich die Arbeit des ersten. Darüber hinaus tauschen sie während der gesamten Arbeit an der Aufgabe Ideen aus und diskutieren sie.

Jede Übung ist nur ein Werkzeug. Wir wollen keine Nägel mit einem Mikroskop einschlagen, deshalb gehen wir immer von der Aufgabe aus. Schauen wir uns die Aufgaben an, für die die Anwendung der Praxis des „Paartests“ relevant ist.


Aufgabe: Mentoring


Es kann jederzeit eine neue Person ins Team kommen. Erwartungen des Teams an ihn - ein ziemlich schnelles Eintauchen in das Team und die Besonderheiten des Projekts und natürlich die Qualität ihrer Arbeit. Damit Erwartungen schnell in die Realität umgesetzt werden, gibt es in vielen Unternehmen einen Mentoring-Prozess. Aber was passiert, wenn Mentoring durch Paartests implementiert wird?


Ein Beispiel:


Ein neuer Tester kam zu dem Projekt, mit Erfahrung oder nicht, es spielt keine Rolle. Als Mentor setzen Sie sich mit ihm an Ihren Arbeitscomputer und beginnen, den Prozess wie folgt aufzubauen: Ganz am Anfang haben Sie eine führende Rolle, und das Hauptziel besteht darin, den Anfänger in die Projektprozesse und den Themenbereich einzuführen. Bekanntschaft kann durch eine Geschichte, Präsentation oder sofort durch gemeinsames Testen von Aufgaben erfolgen.


Sie können zunächst das Wesentliche des Problems diskutieren, Antworten auf Fragen finden und einen Testplan entwickeln. Wenn alles zum Testen bereit ist, nehmen Sie Tastatur und Maus und zeigen, wie man testet, und der Anfänger beobachtet. Niemand verbietet es, Rollen und Jobs in nachfolgenden Aufgaben zu wechseln. Die Hauptsache ist, das Wesentliche nicht zu ändern - gemeinsames Testen von Aufgaben an einem Arbeitsplatz, bis Sie Vertrauen in Ihren Partner haben.


Gewinn:


  • Anfänger passen sich schneller im Team an. Er hat einen Einstiegspunkt - einen Mentor, über den Sie den Rest des Teams treffen können. Außerdem wird sich der Neuling eine Vorstellung vom Verantwortungsbereich der Kollegen machen, denn bei der Suche nach Antworten auf Fragen werden Sie ihn sofort an die richtigen Personen weiterleiten.
  • Ein Anfänger wird schnell einen neuen Themenbereich finden.
  • Wenn ein Anfänger keine Testerfahrung hat, lernt er in der Praxis neue Testtechniken kennen und bewertet deren Anwendbarkeit.
  • Es gibt einen Wissensaustausch: über Entwicklungsprozesse, über Techniken, über Testwerkzeuge.
  • Die Sicht des Anfängers ist nicht verschwommen, so dass er neue nicht standardmäßige Szenarien einbringen kann.
  • Der Mentor wird schnell den Grad der Bereitschaft einer neuen Person bestimmen. Dies hilft dabei, den Entwicklungsvektor rechtzeitig zu korrigieren und Aufgaben dafür auszuwählen.
  • Der Testleiter und / oder der Entwicklungsleiter lassen sich durch die Anpassung des Anfängers nicht ablenken. Der Neuling ist in guten Händen und es wird definitiv keine Probleme mit der Qualität der ersten Aufgaben geben.

Mini-Ausgang:


Übung ist geeignet, wenn der Partner eine Person ohne Erfahrung ist und Sie ihn schnell vom Anfänger zum Spezialisten machen müssen. Die Arbeit mit einem erfahrenen Anfänger bringt Gewinn: Jeder lernt, auch ein Mentor. Schließlich arbeitet jeder Mensch auf seine eigene Art und Weise und denkt auf einzigartige Weise mit seinen eigenen Praktiken und Werkzeugen.


Aufgabe: Fortbildung


Möglicherweise stoßen wir auf die Tatsache, dass wir für den erfolgreichen Abschluss unserer Arbeit Kenntnisse über verwandte Spezialisierungen benötigen: Dokumentation erstellen, Aufgaben automatisieren usw. Wie können Kompetenzen schnell und kostengünstig aufgebaut werden? Kontaktieren Sie ein Mitglied Ihres Teams.


Ein Beispiel:


Sie als Tester haben eine Aufgabe, die besser für Unit-Tests geeignet ist, aber Sie verfügen nicht über ausreichende Qualifikationen, und Sie wenden sich an den Entwickler, um Hilfe zu erhalten. Sie setzen sich mit ihm an einen funktionierenden Computer und beginnen mit dem Aufbau des Prozesses wie folgt: Ganz am Anfang muss der Entwickler die Hauptrolle spielen, da er Sie in die Codebasis und die verfügbaren Tests einführen muss. Dann stellen Sie Skripte zusammen und beginnen, sie zu automatisieren. Der Entwickler schreibt die ersten Tests, und Sie beobachten, und Sie nehmen die nächsten Tests bereits selbst in die Hand.


Gewinn:


  • Sie werden schnell herausfinden, wie das Projekt funktioniert und welche Tests bereits vorhanden sind.
  • Lernen Sie nicht nur, Tests zu schreiben, sondern sie auch richtig zu schreiben (Stil).
  • Der Entwickler wird seine Ideen zu Testszenarien erweitern, da Sie zeigen, wie Sie über den Tellerrand hinaus denken können.
  • Der Entwickler erweitert sein Verständnis der Testprozesse, da Sie ihm beibringen, die Qualität seines Codes zu überprüfen, bevor Sie ihn an den Test übergeben.
  • Die Aufgabe wird in kürzerer Zeit durch Autotests abgedeckt.
  • Ein Manager oder Teamleiter wird Ihren Wunsch nach Entwicklung erfreuen.

Mini-Ausgang:


Wenn Sie paarweise arbeiten, können Sie schnell und effizient Kenntnisse in einem neuen Bereich erwerben und diese sofort in der Praxis beheben.


Aufgabe: Unentbehrlichkeit loswerden ( Bus-Faktor )


Sehr oft sind Leute in Teams - die einzigen Träger bestimmten Wissens. Oft wird ein Tester zu einer solchen Person, weil er alles weiß: Benutzerszenarien, wie Dienste implementiert werden, was für einen Test konfiguriert werden muss und vieles mehr. Aber im Leben gibt es Situationen, die einem Projekt eine Wissensquelle entziehen können (Entlassung, Urlaub, Krankheitstage ...). Um die Konsequenzen zu minimieren, können Sie daher auf Nummer sicher gehen und Wissen von einem Kopf auf mehrere im Voraus teilen. Wie? Natürlich durch Paartests!


Ein Beispiel:


Als Tester müssen Sie jedes Mitglied des Teams in Ihre Aufgaben eintauchen und heiliges Wissen übertragen. Sie setzen sich mit ihm an einen funktionierenden Computer und beginnen, den Prozess wie folgt aufzubauen: Sie haben immer eine führende Rolle, ganz am Anfang erzählen und / oder zeigen Sie die Informationsquellen, aktualisieren, wählen und analysieren Aufgaben, die zur Konsolidierung des gewonnenen Wissens beitragen.


Gewinn:


  • Der Verantwortungsdruck nimmt ab, Sie können sicher in den Urlaub fahren, Praktika machen usw.
  • Wenn Sie paarweise arbeiten, können Sie den Kontext ändern und die Routine eines hochspezialisierten Testers verwässern.
  • Der Manager ist ruhig, weil mehrere Personen über Kenntnisse verfügen und mit dem Weggang einer Person die Arbeit nicht entstehen wird.

Mini-Ausgang:


Wenn es enge Spezialisten gibt, üben Sie paarweise für Sie. Es verbessert die Austauschbarkeit und die Übertragung relevanter Informationen.


Aufgabe: Feedback bekommen


Wenn das Testteam aus mehreren Personen besteht, gilt die Praxis des Feedbacks. Paartests sind ein geeignetes Werkzeug für das Betriebssystem.


Ein Beispiel:


Sie oder Ihr Kollege brauchen Feedback. Sie setzen sich mit ihm an einen funktionierenden Computer. Wie Sie den Prozess aufbauen, ist nicht wichtig. Hauptsache, Sie arbeiten zusammen.


Gewinn:


  • Sie oder Ihr Kollege haben eine Vorstellung von den Fähigkeiten eines Partners.
  • Sie oder Ihr Kollege haben anhand des Feedbacks eine Vorstellung vom Entwicklungsvektor.
  • Das Feedback zu Kollegen ist angemessen, da es durch Beispiele unterstützt wird.

Mini-Ausgang:


Gepaarte Sitzungen geben Testern die Möglichkeit, die Arbeit von Kollegen zu beobachten, wodurch das Feedback zuverlässiger wird.


Wir haben die Aufgaben analysiert, die durch Paartests gelöst werden können.
Lassen Sie uns nun über echte Erfahrungen sprechen, um die Fallstricke, die bei der Anwendung dieser Praxis auftreten können, klar zu veranschaulichen.


Fall des Lebens oder nicht wie wir


In einer der Retrospektiven des Testteams wurden folgende Probleme festgestellt:


  • ungleiche Arbeit (Methode und Zeitpunkt des Testens ähnlicher Aufgaben hingen stark von einer bestimmten Person ab);
  • zu vage Rückmeldungen über einander (oft war nur eine Person mit einer Aufgabe beschäftigt, und am Ende von sechs Monaten gab es nichts über viele Kollegen zu schreiben, außer dass „Vasya seine Arbeit gut macht, er ist verantwortlich, reaktionsschnell und kontaktfreudig“).

Nachdem wir diese Probleme formuliert haben, stellen wir uns folgende Aufgaben:


  1. Tauschen Sie Erfahrungen aus und ermitteln Sie die besten Möglichkeiten und Tools zum Testen ähnlicher Aufgaben.
  2. Erstellen Sie die Bedingungen für die Erfassung detaillierterer Rückmeldungen.

Wir waren uns einig, dass wir die Praxis des Paartests nutzen werden, um sie zu lösen.


Mein Kollege und ich haben die gleiche Testaufgabe begonnen.
Die Vorderseite der Arbeit war ziemlich umfangreich, es war erforderlich:


  1. Verstehe einen neuen Themenbereich.
  2. Überprüfen Sie die Analyse und finden Sie darin nicht berücksichtigte Szenarien.
  3. Bereiten Sie eine Testumgebung vor.
  4. Bereiten Sie die Testdaten vor.
  5. Machen Sie Testfälle.
  6. Und am Ende testen :).

All dies musste von Grund auf neu gemacht werden.


Nachdem wir uns an einen Computer gesetzt hatten, begannen wir, Analysen zu lesen. Wir haben vereinbart, einen Absatz oder einen Teil des Textes zu lesen und dann die aufgetretenen Fragen zu diskutieren und bereits die ersten Testfälle zu werfen. Da die Analyse eher schlecht entwickelt war und eine Mischung aus geschäftlichen und technischen Teilen enthielt, dauerte es manchmal 15 bis 20 Minuten, um 10 Textzeilen zu diskutieren. Um das endgültige Problem zu lösen, war außerdem eine Klärung durch den Analysten, Entwickler oder Spezialisten für technischen Support erforderlich. Alle diese Nachrichten und Briefe wurden auch paarweise geschrieben.


Der neue Themenbereich war recht komplex, sodass zum Erstellen von Testfällen eine komplexe Umgebung eingerichtet und ein Teil der Testdaten vorbereitet werden musste. Auch hier gab es viele Fragen und gemeinsame Klarstellungen.


Angesichts all dessen beschlossen wir, langsamer zu werden und ein Treffen abzuhalten, um den Fortschritt der Arbeit und den Erfolg von Paartests zu besprechen.


Während des Treffens stellten wir fest, dass wir nach Beginn der Anwendung der Praxis den Zweck ihrer Anwendung völlig vergessen hatten. Alle Aufmerksamkeit konzentrierte sich nur auf das Testen oder vielmehr sogar auf die Vorbereitung, da es nicht den Testfall erreichte.


Im Laufe der Arbeit ist es uns nicht gelungen, eine vollständige Überprüfung durchzuführen, da wir alle Aktionen zusammen durchgeführt haben, bevor wir sie besprochen haben. Wir haben den Gedankengang und das Handeln des Partners beim Drehen einer neuen Aufgabe nicht bemerkt. Auch Wissensaustausch war nicht möglich, da der Themenbereich für uns beide neu war.


Genau genommen stellte sich heraus, dass Wissen geteilt wurde, aber dies waren Kleinigkeiten wie:


  • Verwendung neuer Hotkeys,
  • unter Verwendung einiger spezifischer Bugtracker-Chips,
  • ...

Sie können dieses Wissen teilen, ohne auf eine so teure Praxis zurückgreifen zu müssen.


Gegen Ende des Treffens haben wir Schlussfolgerungen für uns gezogen:


  1. Bei der Anwendung der Praxis dürfen wir die anfänglichen Aufgaben nicht vergessen.
    Es scheint, dass am Anfang alles richtig gemacht wurde. Wir formulierten ein Problem, stellten Aufgaben, wählten ein Lösungswerkzeug, aber während der Arbeit selbst verlagerte sich der Schwerpunkt. In unserem Fall haben wir nur erreicht, dass zwei Tester an einer Aufgabe beteiligt waren.


  2. Wählen Sie Ihre Testaufgaben so aus, dass die Praxis anwendbar ist.
    Eine neue, komplexe und umfangreiche Aufgabe eignet sich schlecht für Paartests:
    - Es ist schwierig, jemanden auszubilden.
    - Ich kann keine Erfahrungen austauschen.
    - Es ist schwierig, Feedback zu sammeln.


  3. Beschönigen Sie die Probleme nicht.
    Sobald Sie das Gefühl haben, dass etwas schief gelaufen ist, sprechen Sie sofort darüber und warten Sie nicht auf das Ende der Aufgabe oder die letzte Retrospektive des Teams. So können Sie schnell verstehen, dass die Praxis falsch angewendet wird, oder es kann sich herausstellen, dass sie für die Lösung Ihres gewählten Problems überhaupt nicht geeignet ist.



Es gibt viele verschiedene Praktiken. Welche davon in der Arbeit verwendet werden sollen, hängt von Ihnen ab. Vergessen Sie vor allem nicht, warum Sie sie verwenden, und verwenden Sie die Übung nicht zum Zwecke der Übung.


PS Wenn Sie Paartests für andere Aufgaben in Ihrem Arbeitsleben verwendet haben, teilen Sie uns dies in den Kommentaren mit.


Liste der Kalenderartikel:
Versuchen Sie einen anderen Ansatz
Angemessene Paartests
Feedback: wie es passiert
Tests optimieren
Lies ein Buch
Analytics-Tests
Der Tester muss den Fehler erkennen, Caner lesen und den Umzug organisieren.
Dienst laden
QA-Service-Metriken
Testen Sie die Sicherheit
Lernen Sie Ihren Kunden kennen
Rückstand nehmen

Source: https://habr.com/ru/post/de431460/


All Articles