Viele Stereotypen sind mit Tests verbunden: Sie behandeln ihn als einen schnellen Einstieg in die IT mit der Aussicht auf ein hohes Gehalt, aber sie sehen dies nicht als ernsthaften Beruf an. Es scheint, dass das Testen eine kontinuierliche Routine ist, bei der es keinen Platz fĂŒr KreativitĂ€t und die Verwirklichung der eigenen Ideen gibt.

Gemeinsam mit dem Leiter der QA / QC-Abteilung bei Redmadrobot und dem Kurator unseres Kurses
Software Testing Marishunya_QA haben wir herausgefunden, welche FĂ€higkeiten ein Tester haben muss, wo er sich im Testen entwickeln muss, womit die Fluktuation tatsĂ€chlich verbunden ist und warum selbst gute Programmierer keine Verantwortung ĂŒbernehmen sollten Tester.
Was macht die Testabteilung?
Viele sagen, dass der Tester âdas Produkt beschĂ€digenâ sollte - eine SicherheitslĂŒcke finden, die die Verwendung der Anwendung unmöglich machen wĂŒrde. Das ist grundsĂ€tzlich falsch. Der Tester sollte das System von allen Seiten betrachten, darĂŒber nachdenken, wie sich die Anwendung in verschiedenen Situationen verhalten kann, den âSchutz gegen den Narrenâ ĂŒberprĂŒfen - was passiert, wenn Sie beispielsweise die Nummer anstelle des Nachnamens eingeben.
Wenn wir ĂŒber mobile Anwendungen sprechen, denken viele Leute, dass das Testen auf die Bildschirmrotation beschrĂ€nkt ist, dh auf StandardanwendungsfĂ€lle. Ein Ingenieur, der gerade testet, stellt die Frage: âWas kann eine neue Funktion bewirken? In welchen Situationen kann etwas schief gehen? â Nehmen Sie einen Online-Shop: Ein Programmierer implementiert eine Rabattfunktion fĂŒr einen Aktionscode. Wenn er anfĂ€ngt, sich selbst zu ĂŒberprĂŒfen, geht er beispielsweise ĂŒber das HauptmenĂŒ in den Warenkorb - er ist ĂŒberzeugt, dass alles funktioniert, und glaubt nicht, dass dies auf drei andere Arten möglich ist, fĂŒr die Sie auch einen Funktionsaufruf registrieren mĂŒssen. Der Tester muss dem Pfad aller Benutzer folgen, TestfĂ€lle fĂŒr mehrere Szenarien schreiben und dann zu ihnen zurĂŒckkehren. Daher begleitet die Testabteilung das Produkt wĂ€hrend seiner Entwicklung und steht im Zentrum des V-förmigen Software-Lebenszyklus.

Der Tester muss die GeschÀftsanforderungen und technischen Nuancen kennen, da er sowohl Spezifikationen als auch AnwendungsfÀlle testet. Er muss auch seine Noten zusammen mit anderen Teammitgliedern festlegen, um die Lieferung korrekt zu planen, und manchmal den Entwickler treten, da der Projektmanager am Ende des Sprints zur QA / QC-Abteilung kommt, um zu fragen, ob die Anwendung getestet wird.
Der Tester kann alle Projektrollen betreffen und muss jedem Teilnehmer beweisen können, warum es notwendig ist, einen bestimmten Fehler zu schlieĂen oder die Veröffentlichung insgesamt zu verzögern. Ein kompetenter und erfahrener Spezialist, der bereits in der Phase der Koordinierung der Arbeiten von Anfang an an der Entwicklung der Anwendung beteiligt ist, kann die Zeit zur Stabilisierung des Produkts verkĂŒrzen und damit den Preis eines Fehlers senken. Wenn Tester bereits in der ĂberprĂŒfungsphase einen Fehler im Text bemerken, sind die Kosten des Fehlers die Arbeitsstunde des Analysten, um ein paar Zeilen hinzuzufĂŒgen. Wenn bereits in der Baugruppenphase Fehler gefunden werden, mĂŒssen Sie den Analysten bitten, die Tester neu zu schreiben, zu wiederholen und zu ĂŒberprĂŒfen. Dies ist der Arbeitstag und die Release-Ăbertragung oder sogar die Ausnahme von Funktionen aus der Release-Assembly
QA und QC: Was ist der Unterschied?
In Russland werden die Konzepte der QualitÀtssicherung (QualitÀtssicherung) und der QualitÀtskontrolle (QualitÀtskontrolle) verwechselt. Oft sehen Sie eine schematische Darstellung, in der sich die QualitÀtskontrolle innerhalb der QualitÀtssicherung befindet und der Test selbst innerhalb der QualitÀtskontrolle.

Es ist viel korrekter, dies darzustellen:

In der Tat sind QA und QC zwei verschiedene Dinge und sie laufen parallel zueinander. Grob gesagt können Sie fast jedem einfache Tests beibringen: Setzen Sie sich an den Tisch, geben Sie die Beta-Baugruppe der Anwendung und sagen Sie: "ĂberprĂŒfen Sie, wie es funktioniert." QC ist ein Ingenieur, der die AnsĂ€tze kennt, das Produkt live sieht, eine Teststrategie entwickelt und die Grundprinzipien kennt, dh die QualitĂ€t des Produkts selbst kontrolliert. QC arbeitet direkt mit Entwicklern zusammen, stellt eine Fallbasis zusammen und organisiert Tests.
QA ist eine Person, die QualitĂ€t nicht auf der Ebene des hergestellten Produkts liefert, sondern das gesamte Unternehmen, das fĂŒr die Prozesse verantwortlich ist und die Bedingungen fĂŒr den korrekten Betrieb der QualitĂ€tskontrolle bereitstellt, die Abteilungen fĂŒr eine Reihe von Produkten koordiniert und TestplĂ€ne erstellt. Verantwortung Die QualitĂ€tssicherung beginnt mit Verhandlungen mit Kunden, der Zusammenarbeit mit verwandten Abteilungen und dem Aufbau von Interaktionen, setzt sich im Entwicklungsprozess fort und endet bereits mit der PrĂ€sentation des Produkts. Dies betrifft nicht nur technische, sondern auch rechtliche Aspekte. Im Unternehmen können alle Abteilungen selbst gut arbeiten: VerkĂ€ufe werden verkauft, Programmierer codieren, Projektmanager steuern die Prozesse. Damit der Mechanismus jedoch ohne Schlupf funktioniert, war die Interaktion zwischen den Abteilungen klar und die Ausgabe war ein erstklassiges Produkt. QualitĂ€tssicherung war erforderlich - dies ist QualitĂ€tssicherung.
Wie werde ich Tester?
GegenwĂ€rtig gibt es keine speziellen Abteilungen oder Bereiche im Bereich des Testens an russischen UniversitĂ€ten, daher gibt es keine Bildungsvoraussetzungen fĂŒr Kandidaten, obwohl eine technische oder kybernetische SpezialitĂ€t ein groĂes Plus sein wird.
Meistens können Sie in offenen Stellen fĂŒr einen Tester die folgenden Anforderungen erfĂŒllen:

Die Hauptanforderung fĂŒr einen Kandidaten besteht darin, in Algorithmen und Systemen zu denken. Es ist ratsam, einen technischen Hintergrund zu haben und die Theorie zu kennen. Was sind Tests, QualitĂ€tskontrolle, QualitĂ€tssicherung und wie unterscheiden sie sich? Welche Arten von Tests gibt es und wie können sie kombiniert werden? Was ist ein Testdesign, ein Testfall, ein Testplan? Sie mĂŒssen mindestens eine objektorientierte Programmiersprache, die Grundlagen von Datenbanken, die Client-Server-Architektur und die Arbeit in verschiedenen Betriebssystemen kennen.
Wenn dies frĂŒher ein Problem war, ist das Internet jetzt voll von speziellen Ressourcen, wie zum Beispiel einem
Forum zum Testen von Software . Wenn wir ĂŒber BĂŒcher sprechen, dann die Liste der Referenzen unten:
- "Testen von Computersoftware", Cem Kaner, Jack Falk, Hung Q. Nguyen
- âWichtige Testprozesse. Planung, Vorbereitung, Implementierung, Verbesserung â, Rex Black
- âSoftwaretests. Grundkurs â, Svyatoslav Kulikov
Der Markt hat jetzt ein groĂes Problem mit dem Personal, denn neben den technischen FĂ€higkeiten ist es wichtig, einen forschenden Geist zu haben, Ihre Sichtweise zu vermitteln und sie auf jeder Ebene zu verteidigen. FĂŒr einen Tester ist es auch sehr wichtig, in den Themenbereich einzutauchen, um mit GeschĂ€ftsanalysten zu gleichen Bedingungen zu diskutieren und ihnen zu erklĂ€ren, warum einige ihrer Ideen nicht richtig funktionieren. Eine gute QualitĂ€t fĂŒr einen Tester ist es, âfaul genugâ zu sein, da faule Leute dazu neigen, Prozesse zu optimieren, um in Zukunft keine zusĂ€tzliche Zeit und Zeit damit zu verschwenden.
âSicherheit und QualitĂ€tskontrolle sind fĂŒr Russland etwas Neues. Das Problem ist ein MissverstĂ€ndnis des Zwecks und der Ziele des Testens im Allgemeinen. Sie erstellen eine Abteilung, wissen aber nicht, was sie damit anfangen sollen. Es gibt keine klar definierte Aufgabe, weshalb es keine Motivation gibt, fĂŒr das Ergebnis zu arbeiten. Vor sieben Jahren habe ich angefangen, in der Ukraine zu testen, und jetzt habe ich das gleiche MissverstĂ€ndnis wie damals. In Russland sind die meisten Kunden der öffentliche Sektor und das Bankwesen mit ihrer schweren und ungeschickten BĂŒrokratie. In der Ukraine machten sie nur etwa 20% des Marktes aus, der Rest sind private Unternehmen, die ihr Geld zĂ€hlen können. â
Marina Kulikova, Leiterin QA / QC, Redmadrobot
Wie werde ich ein Tester?
Der Berufseinstieg ist einfach, aber das Wachstum und die Weiterentwicklung sind viel schwieriger. Wenn wir Tester mit Programmierern vergleichen, gehen diese wĂ€hrend ihrer Karriere âtiefâ. Der Tester steht im Zentrum des Produktlebenszyklus, daher muss er das gesamte Bild sehen, manchmal die Funktionen des Projektmanagers abfangen und sich mit Produktanalysen befassen, dh âin der Breiteâ entwickeln. Der Tester erhĂ€lt viele FĂ€higkeiten aus verwandten Bereichen, versteht den Umfang seines Fachgebiets oft schlecht, schaut sich um und geht auf etwas anderes ein: Programmierung, Produktbesitzer oder Analytik. Infolgedessen wechseln Testspezialisten hĂ€ufig ihren Beruf, und die QA / QC-Abteilungen leiden unter einem Mangel an hochqualifiziertem Personal.

Obwohl das Testen wirklich eine interessante Branche ist, in der KreativitĂ€t manchmal nicht weniger ist als in der Entwicklung selbst. Der Tester muss hĂ€ufig mit einem Mangel an Eingabedaten arbeiten, unter den Bedingungen strenger Spezifikationen oder strenger Kundenanforderungen, ganz zu schweigen von der Tatsache, dass Sie manchmal selbst mit Ihren eigenen HĂ€nden in den Code einsteigen mĂŒssen. Wenn Sie zu FĂŒhrungspositionen heranwachsen, mĂŒssen Sie viel mit anderen Abteilungen und mit Kunden kommunizieren, um Ihre Sichtweise aus der QualitĂ€tssicherung zu beweisen.
In unserem
Software-Testkurs , in dem Marina Kulikova ĂŒber Testdesign-Techniken und die Sicherstellung der QualitĂ€t Ihrer Software unter allen Bedingungen spricht, können Sie mehr ĂŒber das Testen erfahren und praktische Erfahrungen sammeln.