AccUnit

Unit Testing in VBA - Microsoft Access, Excel, …

Nutzung ohne Add-In

Aus AccUnit
Wechseln zu: Navigation, Suche


Inhaltsverzeichnis

Nutzung ohne Add-In

(wird nicht empfohlen)

Die folgenden Punkte sind für die Bedienung per Add-In nicht erforderlich.

1. Vorbedingung: SimplyVBUnit 3.0

Damit die AccUnit-Bibliotheken funktionieren, muss SimplyVBUnit 3.0 installiert sein.

SimplyVBUnit benötigt außerdem eine registrierte COM-dll TLBINF32.DLL. Falls Visual Studio (ab 6.0) installiert ist, sollte diese Datei bereits vorhanden und registriert sein.

2. Vorbedingung: AccUnit

Um AccUnit im VBA-Projekt verfügbar zu machen, müssen Sie die AccUnit.Integration.dll registrieren:

In einer Kommandozeile (ggf. als Administrator):

%windir%\Microsoft.NET\Framework\v2.0.50727\regasm.exe "%pfad%\AccUnit.Integration.dll" /codebase /tlb:%pfad%\AccUnit.Integration.tlb

Den Platzhalter %pfad% müssen Sie durch den jeweiligen Pfad zu der Dll erstezen.

3. Vorbedingung: Bibliotheksverweise

Um AccUnit im VBA-Projekt verwenden zu können müssen Sie Bibliotheksverweise auf SimplyVBUnit und AccUnit.Integration setzen (VBA-Editor: Extras-Verweise)

AccUnit-Unterstützung für Debug-Fenster

Konfiguration der Access-Anwendungen
Aktivieren

Eingabe im Direktfenster: CreateObject("AccUnit.Configurator").Init VBE.ActiveVBProject

Ergebnis:

  • Verweise auf AccUnit und SimplyVBUnit werden gesetzt
  • Hilfsklasse TestSuiteStarter und das Modul _AccUnitObjects werden eingefügt


Hinweis: Falls es zu einem Compiler-Fehler in Access kommt, da IVBATestSuite nicht erkannt wird, bitte in den Codemodulen "AccUnitObjects" und "TestSuiteStarter" den Namen "IVBATestSuite" gegen "VBATestSuite" austauschen. (Bug wird in nächster AccUnit-Version behoben.)

Entfernen

Eingabe im Direktfenster: CreateObject("AccUnit.Configurator").Remove VBE.ActiveVBProject

Die Signatur der Remove-Methode des Configurators sieht so aus (C#):

Remove(VBProject activeVBProject = null, Boolean removeTestModules = false, Boolean exportModulesBeforeRemoving = true) Quelle: [1]

Daher können mit folgendem Aufruf auch die Test-Module und testrelevante Module entfernt werden: CreateObject("AccUnit.Configurator").Remove VBE.ActiveVBProject, True

Tests an TestSuite anfügen

Einzelne Testklassen anfügen:

  • TestSuite.Add(New NameDerTestKlasse)
  • TestSuite.AddByClassName("NameDerTestKlasse")

Alle Testklassen des Projekts anfügen:

  • TestSuite.AddFromVBProject
Tests ausführen

TestSuite.Run

Tests auswerten

Eine Zusammenfassung der Testergebnisse ist über die Summary-Eigenschaft abrufbar:

  • TestSuite.Summary.Total
  • TestSuite.Summary.Failed
  • TestSuite.Summary.Total
  • ...
Persönliche Werkzeuge