2009-02-12 2 views
7

Wenn Tests in Rubys Unit :: Test Framework ausgeführt werden, gibt es eine wirklich einfache Möglichkeit, über die Befehlszeile anzugeben, dass nur ein Test ausgeführt werden soll (dh die Testklasse und die Testelementvariable angeben). Wenn nicht, gibt es ein anderes Framework mit dieser Funktion?Ruby Test :: Unit Befehlszeilenoptionen?

Antwort

6
ruby /path/to/foo_test.rb --name test_should_do_something_really_spiffy 

, dass der Test nach der Methode test_should_do_something_really_spiffy in dieser Datei definiert rufen.

EDIT: Das ist für die Test::Unit Framework, mit dem die meisten Ruby-Tests geschrieben werden. Ich nehme an, du meintest das Gleiche.

+0

Ist "should_do_something_really_spiffy" eine Methode der Unterklasse von test :: unit? –

+0

Ja. Beachten Sie, dass Test :: Unit ausläuft und durch "Minitest" ersetzt wird, die API jedoch beibehalten wird. – Keltia

+0

Sie können auch Muster als Argument --name verwenden und verwenden Sie kurz -n-Schalter; zum Beispiel: -n/wirklich_spiffy / – Jakub

5

Wenn Sie die vollen Test::Unit Rahmen haben, können Sie tun

ruby /path/to/foo_test.rb --help 

die Befehlszeilenoptionen zu erhalten. Ich denke nicht, dass es funktioniert, wenn Sie nur die Miniversion haben.