Sonntag, 30. Dezember 2012

typische Struktur der Software-Testprozess


Im großen und ganzen Software-Entwicklungsprojekten gemäß der folgenden Teamstruktur gehen

1) Team von Feature Eigentümer: Es ist eine Top-Level-Team in der Hierarchie, die interagiert direkt mit den Interessenten. Es ist verantwortlich für die minutiös verstehen die Anforderungen der Kunden und gruppiert sie in mehrere Funktionen. Verschiedene Mitglieder in einem solchen Team kann die Besitzer einige dieser Merkmale werden. Die Team-Mitglieder gebührend Initiative und aktive Interaktion mit verschiedenen Teams maßgeblich an der Bereitstellung der erforderlichen Richtungen bei der Entwicklung der Funktionen von ihnen Besitz geworden.

2) User Interface Team: Das User Interface namens UI kurz ist extrem wichtig für das Produkt. Selbst wenn ein Software-Produkt hat Reihe von hervorragenden Eigenschaften, aber seine User Interface ist nicht wirksam und praktisch wird das Produkt zum Scheitern verurteilt.

Daher unabhängige User Interface Team erstellt. Die Mitglieder eines User Interface Team sind Spezialisten bei der Gestaltung des User Interface für die Software-Produkte und verstehen den Unterschied zwischen einer guten User Interface und eine schlechte. Das einzige Ziel solcher User Interface Teams ist es, umfangreiche Forschung auf dem User Interface zu tun.

Das UI Team entwirft UI für das Produkt oder seine Funktionen. Im nächsten Schritt wird die UI-Team interagiert mit Feature Management Team eine praktische Form der UI gemeinsam geben. Solche Treffen führen kann in kann "Page Designs" oder einige "Mockups" enthält alle Elemente der Benutzeroberfläche wie in der Seite erforderlich sein. Die Prototypen sind hilfreich bei der Präsentation das gewünschte Aussehen oder schaut auf der Seite. Tatsächliche Navigation zwischen verschiedenen Seiten wird auch während einer solchen cross-funktionalen Sitzungen geprüft.

3) Entwicklung Team: Ist die Aufgabe anvertraut Entwicklung des Produkts.

4) Testing Team: Ist die Aufgabe anvertraut Testen des Produkts.

Fluss des Prozesses:

1) Projekt Kick Start: Die Mitglieder des Feature Eigentümer Team Kick starten Sie den Vorgang mit der Entwicklung eines Design-Dokument auf High-Pegel gilt für jede Funktion und die gleiche ist für alle Beteiligten veröffentlicht.

2) Veröffentlichung High Level Design Document: Abgesehen von der High-Level-Design-Dokument durch Merkmale Besitzern werden die Designs der Seiten oder das User Interface Mockups an alle Beteiligten für die Referenz durch den UI-Teams veröffentlicht.

3) Software-Entwicklung: Codierung der gewünschten Funktionen wird durch das Entwicklungsteam nach den freigegebenen Dokumente gestartet.

4) Software Testing: Das Test-Team Kick beginnt die Prüfung verbundene Tätigkeiten in folgender Weise:

($) Erstellung eines Dokuments mit Test Outline: Dieses Dokument beschreibt Details fließt der Prüf-oder Multiple-Test-Szenarien auf hohem Niveau prognostiziert. Test Umriss hat eine kurze Information, was muss, an welcher Stelle in der Strömung überprüft werden.

Zusätzlich zu den Details fließt, enthält dieser Test Umriss Dokument detaillierte Matrix beschreibt alle Anforderungen aus der High Level Design Document (HLD) bis hin zu den Testabläufe. In HLD eine eindeutige ID kann deutlich erkennen jede Anforderung. Der Zweck dieser Matrix ist, um sicherzustellen, dass alle Anforderungen wurden sorgfältig auf etwaige Mängel überprüft.

($) Vorbereitung von Testfällen: Jedes Testszenario ist ferner mit einem einzelnen Testfall, das alle Informationen enthält, umgewandelt. Es gibt genauen Schritte für die Navigation, die gewünschten Daten und detaillierte Informationen darüber, was überprüft werden muss. Detaillierte Erläuterungen im Test Cases ist insbesondere hilfreich, wenn die Personen, die das Schreiben der Testfall andere als die Personen gehen, um sie auszuführen sind.

($) Test Automation: Obwohl nicht zwingend erforderlich, ist Testautomatisierung optionaler Schritt. Dies beinhaltet die Automatisierung der ausgelegt Testfällen mit Hilfe einiger Automatisierungswerkzeug, am besten den Anforderungen der Firma geeignet.

($) Concurrent Aktivitäten: Entwicklung und Test Arbeit wird gleichzeitig durchgeführt. Das Entwickler-Team wird in der Hauptaufgabe der Kodierung der gewünschten Funktionen tätig. Development-Team tut manchmal eine Art von Test am Ende ihrer als gut. In der Zwischenzeit wird die Test-Team bereitet die Testfälle für die manuelle Prüfung und Automatisierung Skripte für die Automatisierung der Testdurchführung mit der Hilfe von einigen Automatisierungs-Tool.

($) Product Testing: Der Zyklus der Prüfung beginnt, wenn die Test-Teams aktiv die Prüfung des Produkts beginnen und Protokollierung der Fehler in der definierten bug Repository-System. Gleichzeitig haben die Entwickler in fixes der Bugs beschäftigt.

Als Best Practice, werden zwei separate Instanzen der Anwendung erhalten. Ein Beispiel für die Test-Team vorgesehen und die zweite ist für das Team von Entwicklern oder Bugfixing Team bedeutete. Aber sowohl die Teams arbeiten auf der gleichen Code-Ebene.

($) Protokollierung von Bugs: Vor Protokollierung eines Fehlers in bug Repository-System, wird es als ob wir es in der Instanz für die Entwickler oder nicht bedeutete, zu reproduzieren überprüft. Wenn der Fehler reproduzierbar ist, wird sie an die betroffenen Entwickler für die Montage benötigten zugeordnet. Wenn der Fehler behoben ist, wird der Code Fix auf Entwickler-Instanz angewendet, sorgfältig geprüft und dann wird es auf die Test-Team-Instanz für Regressionstests eingesetzt.

Allerdings, wenn der Fehler nicht auf Entwickler-Instanz wiedergegeben werden, kann man schließen, dass es ein Problem im Zusammenhang mit irgendeiner Art von Anwendungs-Setup sein. In einem solchen Fall der Entwickler interagiert mit dem Testteam um festzustellen, ob es ein echtes Bug dass Änderungen im Code ist, oder es ist eine Art Anwendungseinstellung Ausgabe. Ein solcher Antrag Einstellung Probleme sind recht häufig beim Testen der Software-Suiten von eng integrierten Produkten.

($) Regression Testing: Code Patching erfolgt und die Tester wiederholen Sie den Test von Anfang an. Um die Fehler zu beheben, ist eine häufige Patchen des Systems vermieden werden. Gemäß der beste Politik für das Patchen der Bugs, denen für mehrere Runden von Tests wird das Patchen aller Fehler zwischen zwei Tests Runden angesammelt nur einmal, Die Bugs wurden behoben und bereit gehalten für das Patchen zusammen getan. Dies auch nicht haben eine harte und schnelle Regel. Ausnahmen gibt es für Bugs, die als kritisch und die stark behindern können die Tests werden sofort gepatcht werden.

($) Sanity Testing: Nach dem Patchen fertig ist, die Anwendung Instanz zur Vernunft Prüfung durch das Entwicklungsteam unterzogen. Dann wird für den nächsten Test mit runder Ausführung aller Testfälle wieder freigegeben. Dies beinhaltet die Ausführung der Testfälle, die in der vorherigen Runde vorbei passieren.

($) Stoppen des Testing Operation: In einem Szenario des multiplen Testens Runden, muss eine wichtige Entscheidung, ob sie in die nächste Testrunde gehen oder halt es selbst getroffen werden. Die lebenswichtige Entscheidung zu einem großen Teil abhängig von der Anzahl der Fehler, die in der vorherigen Runde der Tests wurde protokolliert. Zwei Faktoren können helfen, eine solche Entscheidung treffen werden:

1) Weitere Tests kann gestoppt werden, wenn keine frischen kritische Fehler entdeckt werden und wenn es keine weitere Notwendigkeit für Regressionstests fühlte.

2) Weitere Tests kann gestoppt werden, wenn sehr wenig Reihe von kleineren Problemen gelassen werden. Der Begriff "Weniger" ist sehr subjektiv und hängt weitgehend von der zu testenden Anwendung.
...

Keine Kommentare:

Kommentar veröffentlichen