2009-05-26 8 views
2

Ich arbeite an einer Reihe von Web-Services und praktisch jedes Mal, wenn ich einen größeren Build produziere, beginnt QA, Bugs auszulösen, die ich oft nicht mit dem serverseitigen Code, sondern mit ihrer Mist-Client-Bibliothek zu tun habe. Ich habe versucht, es zumindest so zu machen, dass sie keine Fehler ohne den XML-Code, den sie auf den Server schieben, einreichen, aber sie ignorieren diese Anforderung häufig.Wie kann ich meinen Web-Service testen, anstatt mich dazu zu zwingen, seinen Web-Service-Client zu testen?

+1

Hmmm ... Wenn ich von QA wäre, würde ich sagen, dass ich gerade getestet habe, wie Ihr Dienst auf schlechte Eingabedaten reagierte ;-) – Treb

+0

Meine erste Frage wäre - warum passiert das überhaupt? Ist das eines dieser Szenarien, in denen QA infected ist, um falsche Bugs zu übermitteln? Es klingt wie eine strittige Beziehung. Ich würde versuchen, ein Gespräch als Kollegen zu führen - Sie sind schließlich im selben Team und teilen ein gemeinsames Ziel, ein gutes Produkt zu produzieren. Der Ton einer solchen Unterhaltung sollte sich auf den Prozess beziehen, nicht auf die Menschen. Vermeiden Sie den Kommentar "uns-gegen-Sie" und konzentrieren Sie sich darauf, wie der Prozess verbessert werden kann. Ich würde viel lieber ein Treffen der Köpfe als es mit dem Management eskalieren. –

Antwort

5

Aufzeichnen, dokumentieren, Fall vorbereiten. Sie halten eine Aufzeichnung über die Anzahl der Zeit, die sie falsch waren, die Zeit, die Sie brauchten, um das Problem zu diagnostizieren, und die Zeit, die es brauchte, um es zu beheben. Dann eskalieren Sie das Problem zum Management: In den letzten 5 Arbeitstagen musste ich insgesamt 15 Stunden zuweisen, um die Probleme X, Y und Z zu diagnostizieren, die ohne Berücksichtigung durch QA geöffnet wurden. Sie mussten A, B und C in ihren Tests überprüfen, um die Probleme zu mildern. Hier ist das XML, das sie vorher gesendet haben, hier ist das XML nach. Wie bei jedem Unternehmensdschungel, dokumentieren Sie Ihre Beschwerde: steht das tägliche Einkommen einer Person auf dem Spiel und er wird Sie zurück kämpfen. QA-Person hat mehr zu verlieren als du, also wird er härter kämpfen. Sie müssen Ihre Ansprüche nachweisen können. Entweder passt die QA ihre Einstellung an, oder Sie bekommen zusätzliche Zeit, um ihr Durcheinander zu beheben, oder nichts ändert sich und Sie wissen zumindest, wo Sie stehen und ... wohin Sie als Nächstes schauen.

+0

Ah, hört sich an, als ob wir in der gleichen Firma arbeiten ... aber höchstwahrscheinlich leben wir nur im selben Universum ;-) – Treb

+0

Yeap, Dilbert ist keine Fiktion;) –

5

Diese Frage wahrscheinlich unter der breiteren Verallgemeinerung von

eingereicht werden könnte: „Wie kann ich meine Mitarbeiter ihre Arbeit richtig zu tun?“

7

Dies hat wahrscheinlich mehr mit Ihren Arbeitsrichtlinien und -prozeduren zu tun als mit der Programmierung.

Aber in der einfachsten Form, ist die Beweislast auf QA, und Sie sind unschuldig, bis bewiesen, schuldig. Wenn die QA einen Fehler bei Ihnen auslöst, sollten sie dies mit den maximal verfügbaren Daten tun, was beweist, dass es tatsächlich einen Fehler gibt und nicht nur ein falsches Negativ auf ihrer Seite. Alles andere ist Mangel an Professionalität auf ihrer Seite.

Sie sollten Richtlinien festlegen und einhalten, um möglichst wenig Zeit zu verschwenden. Sie debuggen ihre Tests ist NICHT akzeptabel, noch ist es Ihre Aufgabe.

1

Vielleicht können sie nur über den Client auf Ihren Web Service zugreifen. Was, wenn Sie ihnen Werkzeuge wie soapUI gezeigt haben und sie diese Werkzeuge benutzen lassen, um Ihre Dienstleistung direkt zu prüfen?

+0

Ich habe eine nicht unerhebliche Zeit damit verbracht, Dinge wie die Verwendung von Wireshark zu demonstrieren, um den XML-Code zu erfassen, oder sehr einfachen Java-Code, um einen XML-String aufzunehmen und ihn zu veröffentlichen, um ein Ergebnis zu erhalten. – Jherico

0

Der Standard Weg, um mit einem solchen Problem umzugehen ist Eskalation. Melden Sie das Problem in der Hierarchie an jemanden, der deren überlegen ist. Stellen Sie sicher, dass Sie gut geschriebene Fallbeschreibungen und Argumente haben, warum sie ihre Vorgehensweise ändern müssen.

Da die Menschen auf der Eskalationsstufe wird höchstwahrscheinlich Manager mit wenig/keine Erfahrung in der Programmierung sein, schreiben Sie Ihre Argumente in ‚Geschäftssprache‘: Wert, Umsatzverlust, Einsparpotential (mein Favorit !) usw.

1

Markieren Sie es als "nicht reparieren - kein Fehler" und werfen Sie es zurück bei QA.

+0

Leider erzeugt das eine Menge böswilligen Willens . Wenn ich es mache, weil sie XML nicht enthalten, werden sie pissy. Wenn ich es mache, nachdem ich festgestellt habe, dass das Problem in ihrem Client liegt, habe ich keine Zeit gespart. – Jherico

+1

>> Markieren Sie es als "nicht reparieren - kein Fehler" und werfen Sie es zurück bei QA. Wenn Sie es als Nicht Bug abprallen bedeutet, dass Sie wissen, dass es kein Bug ist und Sie nicht wissen, ob es ein Bug ist. Bounce es als kann nicht reproduzieren stattdessen. > Wenn ich es tue, weil sie XML nicht eingeschlossen haben, werden sie pissy. Tough. Ich war schon oft auf der anderen Seite, da viele meiner Bugs vom Engineering abgeprallt waren, also bin ich normalerweise unsympathisch. Wenn Sie jedoch die Voraussetzungen für das Reproduzieren eines Fehlers dokumentiert haben und die QA diese nicht erfüllen kann, können Sie fast ein Shell-Skript für die Auflösung festlegen. –

0

Zwei verschiedene Dinge.
Firs QA sollte XML in Fehlerbericht enthalten. JEDE relevante Information, die sie kennen, sollte im Fehlerbericht sein. Falls erforderlich, eskalieren Sie dies, wie andere vorgeschlagen haben.

Zweitens, wenn es Problem mit ihrem Client ist, überprüfen Sie, ob der Benutzer die gleiche Bibliothek verwenden wird. Wenn Sie die QA nicht bitten, den Client/die Bibliothek/den Weg zu ändern, prüfen sie den Dienst. Wenn Fragen nicht helfen, eskalieren zu zeigen, wie viel Zeit und Geld es kostet. Wenn ja, müssen Sie herausfinden, wie Sie Ihren Service mit dieser Bibliothek arbeiten lassen können.

Diese oder eine andere Eskalation kann erforderlich sein.