Sollten wir als Back-End-Entwickler das Testen von Software lernen? [geschlossen]

12

Als Nachwuchsentwickler arbeite ich in einem Unternehmen, das Software für die Luftfahrtindustrie entwickelt. Wir haben ein Testteam, daher habe ich keine Motivation, Testsoftware zu erlernen. Mein Freund arbeitet als Back-End-Entwickler für ein kleines Unternehmen. Ihr Team hat kein bestimmtes Testteam und sie führen ihre Tests selbst durch. Sollte ein Back-End-Entwickler etwas über das Testen von Software lernen?

Ali Arda Orhan
quelle
31
Wenn Sie ein Junior-Entwickler sind und nicht während Ihrer gesamten Karriere Junior werden möchten, sollten Sie so viel über Ihr Fachgebiet wie möglich wissen. Testen ist ein wesentlicher Bestandteil der Entwicklung. Selbst wenn Sie es nicht "brauchen", werden Sie auf Ihrem Gebiet sicherer und können wertvolle Erfahrungen sammeln, was zu höheren Positionen führen kann.
msw
3
Ich bekam die meisten Jobs, weil ich in meiner Freizeit Dinge erledigte, die ich nicht tun musste, sei es, um Haskell zu lernen oder einen Ray Tracer zur Kompilierungszeit in C ++ zu schreiben Für den Job kämpft man nun darum, in ihrer Karriere voranzukommen.
Phresnel
3
Ist das nicht die Art von "weicher" Frage, die zu Meinungsäußerungen führt?
Thomas McLeod
@phresnel Oh, ein Ray-Tracer zur Kompilierungszeit in C ++ ist so böse . Respekt.
David Conrad
3
Ich bin damit einverstanden, dass diese Frage auf Eis gelegt wird. Es ist so, als würde man sagen: "Ich spreche nur Englisch, aber meine Frau kommt aus China und spricht etwas Englisch und natürlich Chinesisch. Soll ich Chinesisch lernen?"
TTT

Antworten:

48

Absolut und eindeutig: ja!

Es ist eine Kernkompetenz, von der Sie erwarten, dass sie in einem großen Prozentsatz der Unternehmen vorhanden ist, für die Sie in Zukunft arbeiten möchten.

Als Entwickler sind die technischen Aspekte des Testens interessanter als die methodischen: Lernen Sie mit einem Unit-Test-Framework, richten Sie automatisierte Tests ein und versuchen Sie, testgetrieben zu entwickeln, um zu sehen, wie es Ihnen gefällt.

Wenn Sie sich darauf spezialisieren möchten, sind Leistungstests / Stresstests und Sicherheitstests / Penetrationstests sehr gefragt.

Michael Borgwardt
quelle
1
@AliArdaOrhan, es gibt ein Argument, dass der Entwicklung jeder Funktion das Schreiben mehrerer automatisierter Komponententests vorausgehen sollte. Probieren Sie es aus, es macht Ihren Code besser.
Jodrell
9
Die Back-End-Entwicklung eignet sich sehr gut für automatisierte Tests. Es gibt keine Verrücktheit mit der Benutzeroberfläche umzugehen. Zumindest mit einem Dev-Team-Unit-Testing-Framework stellen Sie fest, dass mehr Fehler auftreten, bevor sie Ihr Team verlassen und von der Qualitätssicherung gefunden werden. Weniger Fehler beim Verlassen Ihres Teams machen die Beobachter glücklich.
BPugh
2

Das Testen des Codes, an dem Sie arbeiten, ist Teil der Disziplin, die einen guten Programmierer zu einem großartigen Programmierer macht. Durch das Einrichten automatischer Tests unter Verwendung leichter, schneller Testfälle können Sie eine Basisfunktionalität festlegen. Das Ändern des Codes, um Fehler zu beheben oder neue Funktionen hinzuzufügen, kann inkrementell getestet werden und gibt Ihnen schnelles Feedback zu Ihrem Code. Diese schnelle Rückmeldung ist, wenn sie häufig durchgeführt wird, in Bezug auf die Nachbearbeitung viel effizienter als das Erstellen, Kompilieren und Testen, da Sie am Ende nicht so weit vom richtigen Weg abweichen.

BobDalgleish
quelle