Tool für das Memory-Testing auf Continuous-Integration-Servern

JetBrains veröffentlicht dotMemory-Unit-Standalone-Launcher
Keine Kommentare

Die Firma JetBrains hat nicht nur Version 2.0 des dotMemory-Unit-2.0-Frameworks veröffentlicht, sondern auch ein neues Tool an den Start gebracht: dotMemoryUnit.exe. Damit soll das Memory-Testing künftig auch auf CI-Servern möglich sein.

Im März hat die Firma JetBrains das Framework dotMemory Unit angekündigt, das es ermöglicht, Tests zu erstellen, die den Code auf alle möglichen Memory-Issues hin untersuchen. Daraufhin wollten Nutzer vor allem wissen, wann auch der Standalone Launcher für Continuous Integration (CI) verfügbar sein wird. Die Frage hat sich jetzt beantwortet: Zusammen mit dotMemory 4.4 hat das Entwicklerteam hinter dem Framework dotMemory Unit 2.0 veröffentlicht, das nicht nur einige Verbesserungen, sondern auch das dotMemoryUnit.exe-Tool mit sich bringt.

dotMemoryUnit.exe-Tool

Das neue Tool (das als zip-Archiv verteilt wird) funktioniert als Vermittler: es führt einen Standalone-Unit-Test-Runner unter einem Profiler aus und stellt zudem einen Support für dotMemory-Unit-Calls während dem laufenden Test bereit.

NUnit-Tests von MainTests.dll-Dateien lassen sich damit jetzt beispielsweise so ausführen:

dotMemoryUnit.exe
-targetExecutable=“C:\NUnit 2.6.4\bin\nunit-console.exe“
-returnTargetExitCode –„E:\MyProject\bin\Release\MainTests.dll“

Zur Erklärung:

  • -targetExecutable is the path to the unit test runner that will run tests.
  • -returnTargetExitCode makes the launcher return the unit test runner’s exit code. This is important for CI as the build step must fail if any memory tests fail (test runners return a nonzero exit code in this case).
  • The parameters passed after the double dash (–) are unit test runner arguments (in our case it’s a path to the dll with tests).

Damit dürfte es wesentlich leichter sein als bisher, Memory-Tests als Teil von Continuous- Integration-Builds auszuführen. Das Ganze funktioniert, indem der oben gezeigte Befehl als Build-Step auf dem CI-Server hinzugefügt wird. Anschließend laufen die Tests mit dem dotMemory-Unit-Support.

TeamCity-Plugin

Für TeamCity-Nutzer hat das Entwicklerteam außerdem ein Plugin veröffentlicht, das alle .NET-Test-Runner-Types um einen Support für dotMemory Unit ergänzt. Eine Schrittweise Anleitung hierfür gibts im ReSharper-Ultimate-Blog. Wer einen Blick auf ein Anwendungsbeispiel werfen will, findet nachfolgend ein Sample-Build-Project. Die Projekt-Build-Konfiguration ist zudem unter diesem Link verfügbar.

Alle weiteren Infos und Details finden sich im JetBrains-Blog.

Aufmachebild: Puzzle head brain concept von Shutterstock / Urheberrecht: PathDoc

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -