2010-09-18 3 views
6

Ich arbeite derzeit in einigen Racket-Programmen, speziell in der PLAI-Sprache der Programming Languages: Application and Interpretation Buch, und es gibt eine Funktion namens test, ich frage mich, wie man den Fehler im Schläger werfen testen? Weiß jemand, wie man das macht?Wie testen Sie das Werfen von Fehlern im Schläger?

Grüße

(Ich bin nicht Englisch als Muttersprache, ich hoffe, diese Frage zu verstehen ist)

+0

Ja, Ihre Frage ist sehr verständlich ist jedoch, wenn Sie Rat wollen, wie Sie Ihr Englisch zu verbessern, sind hier zwei Bemerkungen: 1. Das Wort "I" ist ein Eigenname und wird groß geschrieben, auch wenn es nicht am Anfang eines Satzes steht. 2. Normalerweise, wenn Sie etwas wie "Grüße" sagen (was oft nicht benötigt wird), geht es am Anfang von dem was Sie sagen Es gibt andere Sätze, die Sie am Ende verwenden. Wiederum ist dies nur als freundlicher Rat gemeint, und Ihre Frage ist verständlich, so wie es ist. " –

+0

Vielleicht sollte diese Frage umbenannt werden zu:" Wie man das Werfen von Fehlern testet Rackets PLAI-Sprache "? – logc

Antwort

7

Es gibt test/exn, dass Sie Fehlermeldungen zu testen, zum Beispiel verwenden können:

(test/exn (error "foo") "foo") 

Beachten Sie jedoch, dass die Dokumente sagen, dass es nur Ausnahmen testen kann, die explizit von Ihrem Code ausgelöst wurden. Die Idee ist, dass Ihr Code auf Fehler prüfen und sie erhöhen sollte, sonst haben Sie einen Fehler. ..

(Für den Test von „echten“ Schläger-Code finden Sie rackunit

+5

Obwohl diese Antwort absolut richtig für die gestellte Frage ist, einige Leute (wie ich) könnten hier landen und nach der Antwort auf den Titel der Frage suchen ("lang racket" testen und nicht "lang plai"). Die Funktion, nach der Sie suchen, ist 'check-exn' in' rackunit'. Hier ist [seine Dokumentation] (http://docs.racket-lang.org/rackunit/api.html#%28def._%28%28lib._rackunit%2Fmain..rkt%29._check-exn%29%29) – logc