Testen im Visual Basic-Track

Lerne, wie du deine Visual Basic-Übungen auf Exercism testest


Eine heruntergeladene Übung enthält diese Dateien zum Bauen und Testen deiner Lösung:

hello-world/
├── HelloWorld.vb          # Your solution
├── HelloWorldTests.vb     # The test suite
├── HelloWorld.vbproj      # Project and build configuration
└── packages.lock.json     # Resolved project dependencies

Die Dateinamen unterscheiden sich je nach Übung. Schreibe deine Lösung in die erste .vb-Datei. Die zweite Datei, die auf Tests.vb endet, ist die [xUnit-Testsuite][xunit]. Im Allgemeinen bearbeitest du sie nur, um weitere Tests zu aktivieren. Die letzten beiden Dateien musst du nicht bearbeiten. Die .vbproj-Datei enthält die Build-Einstellungen des Projekts und die direkten Paketverweise. Die generierte Datei packages.lock.json hält die aufgelösten direkten und transitiven Paketversionen fest.

Note

Die Tests beschreiben das Verhalten, das eine Lösung erfüllen muss, um zu bestehen. Sie können helfen, Details zu klären, die in den Anweisungen nicht behandelt werden.

Tests ausführen

Öffne ein Terminal im Verzeichnis der Übung und führe Folgendes aus:

dotnet test

Der Befehl stellt die Abhängigkeiten des Projekts wieder her, baut das Projekt und führt seine Tests aus. Du kannst auch dotnet watch test verwenden, um die Tests erneut auszuführen, sobald sich eine Quelldatei ändert.

Übersprungene Tests

Übungen aktivieren zunächst nur den ersten Test, sodass du den Rest Schritt für Schritt lösen kannst. Öffne die Datei, die auf Tests.vb endet, um die Tests zu finden. Jeder Test ist eine Sub-Subroutine, die mit einem xUnit-<Fact>-Attribut gekennzeichnet ist. Ein Test wird übersprungen, solange sein <Fact>-Attribut ein Skip-Argument hat:

<Fact(Skip:="Remove this Skip property to run this test")>
Public Sub Lowercase_words()
    Assert.Equal("ROR", Abbreviate("Ruby on Rails"))
End Sub

Um den Test zu aktivieren, entfernst du einfach das Skip-Argument:

<Fact>
Public Sub Lowercase_words()
    Assert.Equal("ROR", Abbreviate("Ruby on Rails"))
End Sub

Sobald der neu aktivierte Test besteht, wiederholst du diesen Vorgang mit dem nächsten übersprungenen Test. Wenn alle Tests aktiviert sind und bestehen, bist du fertig.