Gemeinsam zu mehr Effizienz in der Anwendungserstellung
| K  (→Was soll eine Access/VBA-Test-Plattform können?) | |||
| (Der Versionsvergleich bezieht 61 dazwischenliegende Versionen mit ein.) | |||
| Zeile 1: | Zeile 1: | ||
| - | __NOTOC__ | + | {{Hierarchy header}} __NOTOC__ | 
| - | === Was soll eine ''Access/VBA-Test- | + | [[Kategorie:Testframework]] | 
| + | [[Kategorie:Access-Add-In]] | ||
| + | === Was soll eine ''Access/VBA-Test-Plattform'' können? === | ||
| * Einfacher Start der Tests | * Einfacher Start der Tests | ||
| - | ** Alle vorhandenen Tests starten: <code>TestSuite.AddFromVBProject.Run</code>{{checked}} bzw. über VBIDE-Add-In {{checked}} | + | ** Alle vorhandenen Tests starten: <code>TestSuite.AddFromVBProject.Run</code>{{checked}} bzw. über VBIDE-Add-In{{checked}} | 
| ** Einzelne Tests starten: <code>TestSuite.Add(new Testklasse).Run</code>{{checked}} bzw. in Add-In{{checked}} auswählen | ** Einzelne Tests starten: <code>TestSuite.Add(new Testklasse).Run</code>{{checked}} bzw. in Add-In{{checked}} auswählen | ||
| - | ** Einzelne Methoden aus einer Testklasse starten:  | + | ** Einzelne Methoden aus einer Testklasse starten: mittels Kontextmenü: aktiven Test, im Ergebnisbaum: ausgewählte Tests{{checked}} | 
| - | ** Tests der gerade sichtbaren Testklasse : über VBIDE-Add-In {{checked}} bzw. <code>TestSuite.Run(tsActiveCodeModul)</code> | + | ** Tests der gerade sichtbaren Testklasse : über VBIDE-Add-In{{checked}} bzw. <code>TestSuite.Run(tsActiveCodeModul)</code> | 
| ** Alle Tests für das gerade sichtbare CodeModule starten ''... wie erkennt man die Tests für ein CodeModule?'' | ** Alle Tests für das gerade sichtbare CodeModule starten ''... wie erkennt man die Tests für ein CodeModule?'' | ||
| * Ausgabe der Testergebnisse | * Ausgabe der Testergebnisse | ||
| Zeile 17: | Zeile 19: | ||
| *** Stringvariable / String-Rückgabe | *** Stringvariable / String-Rückgabe | ||
| * Rollback-Funktionalität | * Rollback-Funktionalität | ||
| - | * | + | ** Falls im Test Tabellendaten geändert werden, sollten diese nicht gespeichert werden (<code>DBEngine.BeginTrans</code>/<code>DBEngine.Rollback</code>){{checked}} für Jet: Rollback-Attribut | 
| + | ** Für SQL-Server noch testen/erweitern | ||
| * Row-Test-Feature / Testdaten aus Tabelle | * Row-Test-Feature / Testdaten aus Tabelle | ||
| - | ** Testdaten als Kommentarzeile oberhalb der Test-Methode angeben {{checked}} | + | ** Testdaten als Kommentarzeile oberhalb der Test-Methode angeben{{checked}} | 
| ** Testdaten aus Tabelle auslesen, ohne im Test einen Datenzugriff programmieren zu müssen. | ** Testdaten aus Tabelle auslesen, ohne im Test einen Datenzugriff programmieren zu müssen. | ||
| * Einfache Testerstellung | * Einfache Testerstellung | ||
| ** Testklassen aus Vorlagen erzeugen{{checked}} | ** Testklassen aus Vorlagen erzeugen{{checked}} | ||
| ** Assistent für Test-Methoden (vor allem für Row-Tests) | ** Assistent für Test-Methoden (vor allem für Row-Tests) | ||
| + | ** Testklassen und/oder Test-Methoden für aktives Code-Modul bzw. Prozedur per Kontext-Menü erstellen.{{checked}} | ||
| * Test-Verwaltung | * Test-Verwaltung | ||
| - | ** Testklassen mit Compiler-Anweisungen auskommentieren, damit bei der Auslieferung der Anwendung die Verweise auf SimplyVBUnit und AccUnit nicht benötigt werden. | + | ** <s>Testklassen mit Compiler-Anweisungen auskommentieren, damit bei der Auslieferung der Anwendung die Verweise auf SimplyVBUnit und AccUnit nicht benötigt werden.</s> ''Wäre wirkungslos, da die Implements-Zeilen trotzdem interpretiert werden und somit der Verweis auf AccUnit vorhanden sein müsste.'' | 
| - | ** Testklassen der Anwendung exportieren und importieren (z. B. als Textdatei in ein Unterverzeichnis) {{checked}} | + | ** Testklassen der Anwendung exportieren und importieren (z. B. als Textdatei in ein Unterverzeichnis){{checked}} | 
| * TreeView für die Testergebnisse | * TreeView für die Testergebnisse | ||
| - | ** Sicherstellen, dass alle Knoten fehlgeschlagener Tests/Rows aufgeklappt sind | + | ** Sicherstellen, dass alle Knoten fehlgeschlagener Tests/Rows aufgeklappt sind{{checked}} | 
| - | ** Von jedem Eintrag zur entsprechenden Codestelle wechseln können | + | ** Von jedem Eintrag zur entsprechenden Codestelle wechseln können{{checked}} | 
| - | ** Im Tree Einträge auswählen können und danach diese Tests wieder laufen lassen | + | ** Im Tree Einträge auswählen können und danach diese Tests wieder laufen lassen{{checked}} | 
| + | ** Beim Lauf der Tests bereits den Status anzeigen (pending, executing, passed, failed, error, inconclusive, ignored) | ||
| + | ** Das Testergebnis Tool-Window soll nach Abschluss eines Testlaufs nocheinmal geöffnet werden (für den Fall dass es während einer Debugging-Session geschlossen wurde).{{checked}} ''Über Menü "Ansicht" kann das Fenster geöffnet werden.'' | ||
| + | ** Bei Doppelklick auf einen Eintrag soll ein Fenster mit den Angaben aufgehen in denen auch lange Texte gelesen werden können (ggflls. mit Scrollen)' | ||
| + | ** Kontextmenü zum Öffnen der Detailansicht, Wechseln zum Code usw.{{checked}} | ||
| + | * Category-Attribut | ||
| + | ** Parameter: Name (erforderlich) => AccUnit:Tags {{checked}} | ||
| + | * Ignore-Attribut{{checked}} | ||
| + | ** Parameter: Begründung (<s>erforderlich</s>){{checked}} | ||
| + | * Schnittstellen | ||
| + | ** Ferngesteuerter Testaufruf inkl. Rückgabe des Testergebnisses | ||
| - | |||
| - | |||
| - | + | ---- | |
| - | + | ''Hinweis: '' Diese Aufstellung war das Ergebnis des Brainstormings über eine Testplattform für Access/VBA. Aus diesen Überlegungen ist das Projekt [http://accunit.access-codelib.net/ AccUnit] entstanden. | |
| - | = | + | {{related links|links=[http://accunit.access-codelib.net/ AccUnit Startseite] · [http://de.accunit.access-codelib.net/Erste_Schritte Bedienungsanleitung]}} | 
| - | + | ||
| - | [http:// | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | [ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| AccUnit | 
TestSuite.AddFromVBProject.Run bzw. über VBIDE-Add-In
TestSuite.Add(new Testklasse).Run bzw. in Add-In auswählen
TestSuite.Run(tsActiveCodeModul)
DBEngine.BeginTrans/DBEngine.Rollback) für Jet: Rollback-Attribut
Hinweis: Diese Aufstellung war das Ergebnis des Brainstormings über eine Testplattform für Access/VBA. Aus diesen Überlegungen ist das Projekt AccUnit entstanden.
Weiterführende Links: AccUnit Startseite · Bedienungsanleitung