Dies ist ein Leitfaden zum Interpretieren der Ergebnisse eines Programmiertests.
Programmiertests sind technische Tests, mit denen die Programmierfähigkeiten von Kandidat:innen bewertet werden. Du erhältst dabei nicht nur einen Prozentsatz als Ergebnis, sondern kannst auch sehen, wie sich die Kandidat:innen während des Tests verhalten haben. Dieser Artikel erklärt, wie du den Bericht lesen und verstehen kannst. Programmiertests sind für alle Pakete verfügbar.
Ungefähre Lesezeit: 4 Minuten
Inhalte in diesem Artikel
- Gesamtergebnis
- Programmiertestbericht
- Testfälle und Validierungsfälle
- Fehlermeldungen
- Häufige Fragen
Gesamtergebnis
Das Gesamtergebnis findest du im Abschnitt Test auf der Ergebnisseite der Kandidat:innen:
Hier kannst du sehen, welche Punktzahl die Kandidat:innen erreicht haben und wie lange sie dafür gebraucht haben.
Klicke auf den Link (Bericht), um den detaillierten Testbericht anzuzeigen.
Programmiertestbericht
Der Programmiertestbericht wird als neue Registerkarte in deinem Browser angezeigt.
Oben auf der Seite kannst du den Bericht per E-Mail an Kolleg:innen senden. Der Bericht wird ihnen 14 Tage lang zur Verfügung stehen.
|
||
Testergebnis. Das Testergebnis gibt den Prozentsatz der bestandenen Testfälle zur Validierung an. Es setzt sich aus einer Korrektheits- und einer Leistungsbewertung zusammen, doch die meisten Programmiertests verwenden lediglich eine Korrektheitsbewertung. |
||
Korrektheitsbewertung. Die Korrektheitsbewertung deckt alle Testfälle zur Validierung ab, die bestimmen, ob eine Eingabe die erforderliche Ausgabe liefert. |
||
Frage. Die Programmierfrage, die der/die Kandidat:in erhalten hat. Jeder Programmiertest in unserer Bibliothek umfasst eine Datenbank mit möglichen Programmierfragen. Nur eine dieser Fragen wird den Kandidat:innen während des Tests gestellt. Die Frage gibt in der Regel einen Kontext an, spezifiziert die Anforderungen und enthält Beispiele, die zeigen, wie der Code funktionieren sollte. |
||
Zeitleiste. Du kannst den Code mit der Zeitleiste von Anfang bis Ende erneut abspielen. So kannst du sehen, wie er entstanden ist. Auf der Zeitleiste erscheint eine Markierung, wenn Kandidat:innen Elemente des Codes kopieren und einfügen. Die eingefügten Teile werden im Editor gelb hervorgehoben. |
||
Lösung. Dieses Fenster ist dynamisch: Die angezeigten Informationen hängen von der Position des Zeitleistenbalkens ab. Am Beginn der Zeitleiste wird dieses Fenster weitgehend leer sein. Am Ende der Zeitleiste siehst du den letzten Eintrag der Kandidat:innen, bevor sie ihre Lösung einreichen. |
||
Benutzer- und Validierungsergebnisse. Hier siehst du die Antworten der Kandidat:innen auf jeden Testfall zusammen mit dem Ergebnis. Wenn du auf den Testfall klickst, wird das erwartete Ergebnis zusammen mit dem Ergebnis des/der Kandidat:in angezeigt, das auf seinem/ihrem Code basiert. Das Ergebnis der Validierung ist das Ergebnis der endgültigen Einreichung des/der Kandidat:in für die Übung und entscheidet, ob die Übung bestanden wurde oder nicht. |
Testfälle und Validierungsfälle
Ein Testfall ist ein ausgedachtes Szenario, gegen das der Code der Kandidat:innen getestet wird, wenn sie sich dafür entscheiden, den Code während des Tests auszuführen. Sie können dadurch sicherstellen, dass ihr Code funktioniert. Diese Testfälle prüfen, ob eine bestimmte Eingabe in ihrem Code die gewünschte Ausgabe liefert. Im Wesentlichen nutzen Kandidat:innen Testfälle, um zu sehen, ob sie auf dem richtigen Weg sind. Das Resultat der Testfälle hat keinen Einfluss auf das Testergebnis.
Ein Validierungsfall ist die eigentliche Programmieraufgabe, die gelöst werden muss, und entscheidet über das Testergebnis. Nachdem die Kandidat:innen ihren endgültigen Code eingereicht haben, wird dieser vollständig validiert und geprüft, um sicherzustellen, dass er wie erwartet funktioniert. Kandidat:innen, die bei der Validierung durchfallen, haben die Übung nicht bestanden. Während des Tests können die Kandidat:innen nicht sehen, ob ihr Code die Validierungsfälle besteht.
Theoretisch ist es möglich, die Testfälle nicht zu bestehen, den Validierungsfall jedoch zu bestehen. Es ist auch möglich, die Testfälle zu bestehen, den Validierungsfall jedoch nicht zu bestehen.
Fehlermeldungen
Wenn die Kandidat:innen die Test- oder Validierungsfälle nicht bestehen, wird eine Fehlermeldung angezeigt. Dies sind einige typische Fehlermeldungen, die auftreten können:
- Aufgabe mit Fehlern beendet. Bei der Ausführung von mindestens einem Testfall ist eine Ausnahme aufgetreten. In diesem Fall lautet das Ergebnis 0 %, selbst wenn manche Testfälle bestanden wurden, weil keiner der Validierungsfälle bestanden wurde.
- Aufgabe hat unbekannten Status erreicht. Der Code konnte nicht kompiliert werden. Dies kann z. B. der Fall sein, wenn der/die Kandidat:in Änderungen an der Funktionssignatur vorgenommen hat. In diesem Fall wird keiner der Testfälle bestanden und das Ergebnis für den Test lautet 0 %.
- Zeit für die Aufgabe ist abgelaufen. Der Code konnte nicht innerhalb des angegebenen Laufzeitlimits ausgeführt werden. Dies führt zu einem Ergebnis von 0 % für den Test.
- Nicht unterstützter Operandentyp. Das bedeutet, dass der/die Kandidat:in eine Operation verwendet hat, die von der Codebibliothek für dieses Testszenario nicht unterstützt wird. Zum Beispiel wurde ein mySQL-Befehl anstelle eines SQLite-Befehls verwendet.
Häufige Fragen
Bedeutet ein Ergebnis von 0 %, dass der/die Entwickler:in schlecht ist und ich ihn/sie nicht einstellen sollte?
Nicht unbedingt. Erinnerst du dich noch, wie dein Mathelehrer dich immer dazu angehalten hat, deinen Lösungsweg zu zeigen? Das lag daran, dass du sonst keine Teilbewertung bekommen hättest.
Leider kann ein Computersystem keine Teilbewertung vornehmen – entweder funktioniert der Code oder er funktioniert eben nicht. Das ist genau der Grund, warum wir den Programmierbericht teilen. So können deine internen Entwickler:innen die Lösung des/der Kandidat:in prüfen und eine fundierte Entscheidung treffen.
Der Code hätte perfekt sein können, wenn da nicht ein kleiner Tippfehler gewesen wäre, den der/die Kandidat:in aus Zeitgründen nicht korrigieren konnte. Dies führte zu einem Ergebnis von 0 %. Du könntest tolle Kandidat:innen verpassen, wenn du ihren Code nicht von einem/einer Entwickler:in überprüfen lässt.
Mit wem kann ich den Programmierbericht teilen?
Der Bericht kann mit jeder Person geteilt werden, egal, ob es sich um eine:n registrierte:n TestGorilla-Benutzer:in handelt oder nicht. Gib einfach die E-Mail-Adresse der gewünschten Person ein und wir schicken ihr einen direkten Link zu dem Bericht. Um den Bericht anzuzeigen, muss diese Person nicht in der App angemeldet sein.
Wenn du kein:e Entwickler:in bist – oder keine Erfahrung im Programmieren hast – empfehlen wir dir, den Bericht von einer qualifizierten Person prüfen zu lassen. Sie kann weitere Einblicke in die Leistung der Kandidat:innen und ihre Einreichung geben.
Was ist eine Leistungsbewertung?
Die Testfälle zur Leistung bilden die Leistungsbewertung. Diese Testfälle erfordern nicht nur die richtige Ausgabe, sondern die Ausgabe muss auch innerhalb eines bestimmten Zeitrahmens (in Millisekunden) zurückgegeben werden.
Testfälle zur Leistung werden nur verwendet, wenn der Code eine Effizienzanforderung umfasst. Falls vorhanden, wird die Leistungsbewertung unter der Korrektheitsbewertung angezeigt.