![]() |
Code coverage
Hallo,
frei nach dem Motto "tue Gutes" und sprich darüber, habe ich eine komplett neu geschriebene Version des "Delphi Code Coverage Wizards" (Fork der bisherigen Version siehe hier: ![]() ![]() Ich bin noch nicht ganz soweit, dass ich ein 1.0 Release machen will, was fehlt ist aber eher noch kosmetischer Natur. Das Kommandozeilen Tool zur Durchführung des Coverage Testlaufs wird gleich als exe mitgeliefert. Wer er ausprobieren will findet es hier: ![]() Einfach runterladen, Projekt öffnen und F9 drücken... Voraussetzung: Vermutlich wird mindestens 10.4 benötigt, entwickelt wurde es mit 11.2. Was ist da jetzt anders dran?
Grüße TurboMagic |
AW: Code coverage
Noch was dazu: eine Veröffentlichung via GetIt in ein paar Tagen ist auch geplant...
|
AW: Code coverage
Ich würde ja gerne, aber "DelphiCodeCoverageWizard is a simple wizard to setup and build scripts for DelphiCodeCoverage ...". Leider habe ich es trotz mehreren Versuchen nicht geschafft DelphiCodeCoverage mit unserem Projekt zum Laufen zu bringen.
Habe nachgeschaut, da gab es ein "EJclFileUtilsError". Nun lese ich oben "5. Im Gegensatz zu seinem Vorgänger braucht es kein JVCL/JCL.". Sollte ich es nochmals versuchen? :gruebel: |
AW: Code coverage
Hallo,
danke für's Testen und sorry, da muss sich der Fehlerteufel eingeschlichen haben. Ich versuche das heute Abend zu fixen. Mist! Grüße TurboMagic |
AW: Code coverage
Zitat:
Aber mal 'ne blöde Frage: Woher stammt das eigentliche Code Coverage Tool? Der Link führt zu ![]() ![]() |
AW: Code coverage
Zitat:
![]() |
AW: Code coverage
Naja, mir ist klar, dass es da schon noch das eine oder andere gibt was man aufarbeiten könnte/sollte, aber diese
erste Version ist (vom JCL/JVCL Problem abgesehen und wenn man's installiert hat ist auch das keines) auch so schon nützlich. Und ja, es wird nur C0 oder wie das heißt abgedeckt, dafür muss es nicht den Quellcode instrumentieren. Und selbst C0 ist besser als es nicht zu verwenden denke ich. => wenn's so funktioniert wie geplant gibt's in absehbarer Zeit eine gefixte Version und ich hab' auch noch ein paar Ideen für kleine Verbesserungen. Ist eigentlich im Standard Lieferumfang der VCL ein URL/Link-Label dabei? Ich glaube mich zu erinnern, dass da irgendwas war. Naja, nacher mal danach schauen... |
AW: Code coverage
Zitat:
Ich habe eben alle 11 Units des Projektes durchgeschaut und bei keinem war etwas in den Uses was nicht mit Delphi (Professional) selber mitgeliefert wird. :? Irgendjemand eine Idee? EJclFileUtilsError kann natürlich auch nirgends mittels Strg-Shift-F gefunden werden... |
AW: Code coverage
Zitat:
![]() Nachtrag: Der Fehler tritt in der Unit Debugger, Funktion TDebugger.Start auf. Die Funktion ForceDirectories wirft diesen Fehler, wenn kein Verzeichnisname übergeben wird. In der Konfiguration muss für OutputDir ein Verzeichnis angegeben werden. Bis bald... Thomas |
AW: Code coverage
Zitat:
danke für diese Infos! Das ist dann also nicht mein Problem, da mein Wizard das Kommandozeilen Tool ja in vorcompilierter Fassung enthält. Somit bleibt mein Wizard JCL/JVCL frei. Grüße TurboMagic |
AW: Code coverage
ok, dann nicht dein Problem. Das bedeutet dann umgekehrt dass der Wizard mir erstmal nichts nützt. Oder?
Dass die Exception kommt weil da ein Leerstring kommt meine ich auch mal herausgefunden zu haben. Leider habe ich nicht verstanden was das soll und was ich dazu tun könnte. Magst Du mytbo oder sonst wer mir helfen? Dann würde ich nächste Woche nochmals einen Versuch wagen, das mit unserem Projekt zum Laufen zu bekommen. Falls Ja, macht es dann Sinn gleich mit dem Wizard zu starten? Oder ist es besser DelphiCodeCoverage erstmal alleine zu verwenden? |
AW: Code coverage
Naja, ein gewisses Interesse sollte ich schon dran haben, dass des Coverage Tool selber läuft,
sonst nutzt ja der Wizard nix. Wir können uns gerne mal darüber unterhalten was da bei dir genau passiert und wie dein Projekt aussieht. Evtl. ist es ja auch möglich den Fall in einem reduzierten Projekt nachzustellen? Das könnte man dann evtl. teilen? Noch eine Kleinigkeit: ich hab' gestern schon (siehe Development Branch) die nähsten Weiterentwicklungen vorgenommen, jedoch noch nicht immer funktional oder getestet. Grüße TurboMagic |
AW: Code coverage
Vielleicht eine blöde Frage...
Wofür? Was macht man damit? Warum? LG Mavarik |
AW: Code coverage
Die ersten Erklärungen wenn ich "Testabdeckung" oder "Code Coverage" in die Suchmaschine meines Vertrauens eingebe sind eigentlich ganz brauchbar. Darunter auch Wikipedia, ganz allgemein für Maschinenbau und Softwareentwicklung:
![]() Vlt. hast du auch auf Platformen wie Github Automatismen gesehen die einen Pull-Request blockieren, wenn dieser die prozentuale Testabdeckung senkt. "Im echten Leben" hast du teilweise auch Kunden die wissen wollen, ob die Testabdeckung in deiner Software mindestens X % hoch ist. Klar ist das nur beschränkt aussagekräftig, aber gegenüber dem Konkurrenten ohne Unit-Tests mit 0% Abdeckung bist du definitiv im Vorteil 😉 |
AW: Code coverage
Hallo,
1. Ja, es macht Testabdeckung, d.h. ermittelt welche deiner Code Zeilen beim laufen Lassen deiner Unit Tests (die du ja sicher hast ;-) ) ausgeführt werden und welche nicht. 2. Es ändert dazu deinen Code NICHT, kann aber daher auch nur C0, was nicht ganz alle Szenarien testen kann. Aber besser als nix zu testen! 3. Die eigentliche Analyse hab' ich nicht geschrieben, aber der Wizard soll die benutzung etwas erleichtern, da er einen GUI bietet. Jetzt hab' ich aber noch ein Problem: momentan stürzt die CodeCoverage.exe immer beim Aufruf ab (irgendwas in der NTDLL.DLL?!?!). Gibt's eine Möglichkeit beim Prozessausführen mitzubekommen, dass sowas böses passiert ist? Als Rückgabewert bekomme ich nämlich 0, was ja meist "OK" bedeutet... Grüße TurboMagic |
AW: Code coverage
Zitat:
Bis bald... Thomas |
AW: Code coverage
Zitat:
dazu gibt's diverses zu sagen:
Ich glaube, damit hab' ich das Tool wieder ein Stückchen nach vorne gebracht. Oder? Grüße TurboMagic |
AW: Code coverage
So und um noch etwas zu illustrieren was das Dingens so tut, hab' ich jetzt noch Screenshots am Ende der Readme hinzugefügt.
|
AW: Code coverage
Zitat:
|
AW: Code coverage
Zitat:
![]() |
AW: Code coverage
Ich hatte unpraktischerweise beim ersten Start die Installation in das Tools-Menü abgebrochen.
Kann man diesen Dialog irgendwie manuell aufrufen? Edit: Anscheinend nicht, zumindest finde ich im Sourcecode nichts dazu. Ich habe jetzt den Eintrag in der Registry gelöscht, dann kommt der Dialog wieder: [Computer\HKEY_CURRENT_USER\SOFTWARE\DelphiCodeCove rageWizard] KnownConfigurations="...." |
AW: Code coverage
Sollte der Tools-Menü Eintrag keine Parameter haben? Sowas wie das aktuelle Projekt?
|
AW: Code coverage
Zitat:
1. Der Dialog zum Hinzufügen kommt außer beim ersten Start immer dann wieder, wenn eine bisher noch nicht bekannte Konfiguration entdeckt wird (also auch ein neues Delphi). 2. Das fände ich nur dann sinnvoll, wenn es da einen Platzhalter für das aktuell in der IDE geladene Projekt gibt. Warum? a) der Eintrag wäre sonst statisch b) und würde daher nur für ein bestimmtes Projekt gelten. Ich vermute aber die meisten Entwickler nutzen die selbe IDE Konfiguration für alle ihre Projekte. Damit würde ganz sicher immer statisch das richtige geladen, gell? ;-) (naja eben eher nicht) c) es gibt ja die Liste zuletzt benutzter Projekte. Einfach dort Doppelklicken und es wird geladen. => Ich bin nicht komplett abgeneigt, aber eben nur, wenn die Rahmenbedingungen passen. Ich hab' damit schon noch ein bisschen was vor, das wäre aber nicht die höchste Priorität. Aber es ist ja ein Open Source Projekt... ;-) Grüße TurboMagic |
AW: Code coverage
Zitat:
(GExperts macht anscheinend den Tool-Properties Dialog in Delphi 11 kaputt, habe ich gerade bemerkt. :cry: ) Zitat:
|
AW: Code coverage
Es hat mich zwar vom Umbenennen der Labels abgehalten, aber ich habe den Vorschlag mit der
geänderten Tools Menü Integration jetzt umgesetzt. Sogar noch besser: es gibt jetzt zwei Einträge. Huh? Warum? :? Weil ich jetzt Kommandozeilenparameter eingeführt habe:
Ist das ein nützlicher Fortschritt? Grüße TurboMagic |
AW: Code coverage
Hallo,
es gibt eine neue Version 1.10: ![]() Die Release notes beschreiben was sich seit der V1.0 vor ein paar Tagen alles getan hat. Grüße TurboMagic |
AW: Code coverage
Zitat:
Code:
Und aufgrund dem "default" kam ich nicht auf die Idee dass das gesetzt werden müsse.
-od directory -- the output directory where reports shall be
generated - default is current directory Ich habe nun einen Neuanfang mit dem Wizard gewagt. Dazu benutze ich unser "tiefliegendste" Testprojekt. Erfahrungen: 1. "Einfach runterladen, Projekt öffnen und F9 drücken..." ist ein bischen dürftig. Vorher Lesen Readme hätte geholfen. Map war nicht da, musste abbrechen und neu starten. 2. Bei manchen Einträgen musste ich raten was gemeint ist. Vermutlich habe ich richti geraten. 3. Erster Durchlauf sah schon mal gut aus, es gab immerhin ein Ergebnis. 4. Allerdings war das Ergebnis vom unit test und nicht vom zu testenden Code, also nochmals in Wizard. Bei Source dann die richtige Datei ausgewählt. 5. Da ist wohl ein Bug, denn "Next" war Disabled. Ich bin dann Zurück und wieder vor, dann war sie enabled. 6. Bin nun am Schluss. Muss ich jetzt nochmals "Save&Generate" machen. Ich versuchs, wieso werde ich nach einem Dateinamen gefragt? Muss ich jedes Mal speichern oder kann ich gleich nach einer Änderung auf "Run"? 7. Ok ich speichere halt und geh dann auf Run. Läuft durch. 8. Wieder ein Ergebnis, aber nicht von der Datei die ich will. Ich markiere nun halt mal alle Dateien. Die zu testende Datei und die Datei mit dem unit test ist dabei. Dieses Testprojekt beinhaltet 1359 unit tests in ca. 70 units und dazu nochmals 70 units mit dem Produktivcode. Im Output befinden sich jedoch wieder nur wenige Dateien. Als Outputformat habe ich HTML gewählt. Es gibt im Wizard drei Seiten - "Summary Coverage Report" - da sind 10 Dateien aufgeführt - Coverage report for <eine unit-test-unit> - da sind drei Dateien aufgeführt, habe zu keiner ein Ergebnis. - "Summary Coverage Report" - sieht aus wie die erste Nun bin ich diesbezüglich ratlos. :? Hilfäää! (Etwas anderes was ich bei meinen Versuchen festgestellt. Es sind einige unit test fehlgeschlagen mit der Meldung er könne Dateien nicht schreiben. Jedesmal war im Pfad der Datei der Ordner enthalten, den ich für die Coverage angegeben habe. Diese liegt jedoch ganz woanders. Könnte es sein, dass DelphiCodeCoverage und die unit test das Aktive Verzeichnis (ChDir) benutzen und ändern? Das würde dies für mich erklären. Das Problem ist für mich jedoch sekundär.) Nachträge: 1. Natürlich muss nicht nur das Testprojekt eine map enthalten, sondern auch das Package mit dem Produktivcode. :-D Gibt es dazu irgendwo eine Fehlermeldung Mit der map ist die Ausgabe nun schon wesentlich umfangreicher, jedoch immer noch fehlt das meiste. 2. Entdeckt habe ich eine log Datei, die Delphi-Code-Coverage-Debug.log mit über 12MByte. Zu der Datei die mich interssiert steht allerdings darin: "Module Bla.Test.Math.Geometry skipped" Eingeschaltet müsste die m.E. sein, in der dccp steht: <SourceFile Selected="True">Bla.Math.Geometry.pas</SourceFile> <SourceFile Selected="True">Test\Bla.Test.Math.Geometry.pas</SourceFile> Eher am Ende der log finde ich sehr viele Exception during generation of unit coverage for: Bla.pas exception:Cannot open file "D:\Project\_Anderes\delphi-code-coverage-wizard-plus-master\Binaries\Win32\Debug\Bla.pas". Das System kann die angegebene Datei nicht finden Dabei ist bei mir "D:\Project\_Anderes\delphi-code-coverage-wizard-plus-master\Binaries\Win32\Debug" der Ordner wo die "DelphiCodeCoverageWizard.exe" drin liegt. Die Bla.pas ist jeweils eine Sourcedatei von uns, die sicherlich in diesem Ordner liegen sollte. |
AW: Code coverage
Hallo,
danke schon mal für's Testen! Und ja: das hat sicher auch noch Kinderkrankheiten. Zitat:
das eingegebene Ausgabeverzeichnis an. Zitat:
Zitat:
funktioniert. Es sollte ja Enabled sein, wenn man da einen Pfad eingestellt hat und mindestens eine Datei ausgewählt hat. Der aktuellste Stand ist im Entwicklungszweig auf GitHub. Zitat:
Save ist im Prinzip "Save as", schlägt aber den Dateinamen vor, wenn man eine geladene Datei speichert. Somit kann man auch eine Datei laden und unter einem neuen Namen speichern. Sollte das geändert werden? Falls ja, wie? Zitat:
Also z. B. D:\Projekte\MeinProjekt4711 und dort z. B. in den unterordnern Source und 3rdPartySource statt: D:\Projekte\MeinProjekt4711 und D:\Projekte\3rdPartySource Werden alle gewünscvhte Dateien in der Checklistbox aufgeführt? Wenn man die Batch Datei von der Kommandozeile aus aufruft, werden dann noch irgendwelche Meldungen von CodeCoverage.exe angezeigt? Sind alle ausgewählten Dateien und Verzeichnisse in <Projektname>_Paths.lst und <ProjektName>_Units.lst enthalten? Falls ja und es werden nicht alle richtig bearbeitet müssten wir in CodeCoverage nach dem Problem suchen, falls nein ist der Fehler wohl in meinem Wizard. Zitat:
Zitat:
für den Code angibt liegen? Da man ja keine dpr/dproj oder so direkt angibt, kann der Wizard nicht automatisch ermitteln wie diese .map Datei heißen müsste, man könnte aber prüfen und warnen wenn dort keine liegt. Zitat:
Oder hab' ich dich da falsch verstanden? Grüße TurboMagic |
AW: Code coverage
Die Fragestellung, warum die Quellcode Dateien im falschen ordner gesucht werden hab'
ich auch beim CodeCoverage Projekt mal aufgeworfen: ![]() Meine neueste interne Entwicklungsversion fügt jetzt den -sd Parameter (inkl. Pfad) zur Batch Datei hinzu. Ich habe eben in einem Test auch die neueste CodeCoverage.exe benutzt, die hat ja noch mehr Optionen und schönere HTML Ausgabe. Bei mir (ok, ist ein minimalistisches Testprojekt) funktionierte das, wenn man kapiert hat, welche der Tabelleneinträge der Übersichtsseite tatsächlich Links sind die man anklicken kann. Die neue Fassung wird vermutlich irgendwann heute auf Github verfügbar sein. Wenn es mit der weiterhin Probleme geben sollte, dass die nicht für alles zu erwartende entsprechende Ausgabe-Dateien erzeugt, sollten wir mal gemeinsam Kontakt mit den CodeCoverage Entwicklern aufnehmen und denen entsprechende Daten liefern (erzeugte lst-Dasteien, Log-Datei usw.) Grüße TurboMagic |
AW: Code coverage
(Meine Anwort bezieht sich auf den vorvorigen Beitrag.)
Hallo TurboMagic, nichts zu Danken fürs Testen. Ich will das ja haben weil ich es für eine professionelle Entwicklung für unverzichtbar halte. Es ist jetzt ein bischen viel. Sollten wir die Aspekte vielleicht getrennt behandeln? Ok, ich versuchs mal der Reihe nach: "default is current directory" - ja da ist es super wenn der Wizard das gleich so abfüllt. (Ich habs nur erwähnt um das Fehlschlagen bei meinem Versuch vor Jahren mal zu erklären.) "Magst du mir sagen welche Optionen nicht gleich verständlich waren?" "Script output folder" und "Generated report output folder". Ich hatte nur eine vage Ahnung wofür das ist. Man muss erst mal wissen wie das ganze Ding so ungefähr arbeitet. War nicht schlimm, habe halt irgendeinen neuen Ordner da eingetragen. Irgendwann habe ich danach mal reingeschat was da so drin liegt. Vielleicht könnte man da einen Default vorschlagen (relativ zu DelphiCodeCoverageWizard.exe oder zum Source)? Gesammt nicht so wichtig. Wichtig ist jedoch schon wie ich schrieb, dass man die Readme vorher liest ;-) "denn "Next" war Disabled.". Mein Stand war vor ein bis zwei Tagen. Für mich nicht schlimm. 6. "Save&Generate" etc.: "Run führt nur die Batch Datei aus." - dazu müsste man erst mal wissen wofür den eine Batchdatei ist. Als Einsteiger kommt man da vielleicht nicht so schnell drauf. Wenn man so wie ich ein Projekt hat und damit experimentiert, dann wäre ein Save&Run schön. Es war und ist oft üblich ein "Save" und ein "Save as" zu haben. Beim ersten mal geht "Save" dann auch immer zu "Save As". Aber auch das ist nicht so wichtig für mich, erst muss es mal funktionieren ;-) 8. Alle gewünschten Source Dateien liegen in und ggf. unterhalb eines bestimmten Ordners. Diesen Order gebe ich auch an. Der Unit-Test liegt auch in einem Unterorder. Soweit ich es sehe werden alle Dateien in der Checklistbox aufgeführt. Ich habe hier eine Datei "TestSystem3_dcov_execute.bat" und daneben eine "TestSystem3_dcov_units.lst". Darin sind auch alle Dateien aufgeführt. Irgendwelche Meldungen von CodeCoverage.exe sah ich keine. Aber wie weiter unten erwähnt ist in dem log einiges an Fehlern drin. Nachtrag 1. map: Habe da nicht so eine Ahnung was man da tun könnte. Für mich auch kein Problem mehr nehme ich an. Nachtrag 2. - für mich das allerwichtigste Punkt "Hm? Die Source Datei im Win32\Debug Ordner des projektes?" Ja, Delphi-Code-Coverage sucht offensichtlich die Sourcedateien im Debug Ordner vom Wizard. Da sind die Dateien natürlich nicht drin. Die liegen bei mir ja ganz woanders. Ich habe gerade mal nachgeschaut und habe eine Idee: Hier der Inhalt der bat:
Code:
Weiter, in der Datei "J:\bladir\DelphiCodeCoverage\Script\TestSystem3_d cov_paths.lst" steht nur "Test\" drin. Das ist wohl ein Unterordner von meinen Sourcen. In der Datei "TestSystem3_dcov_units.lst" stehen alle Dateien drin ohne Pfad.
"D:\Project\_Anderes\delphi-code-coverage-wizard-plus-master\Binaries\CodeCoverage.exe" -e "J:\bladir\sysWin32\TestSystem.exe" -m "J:\bladir\sysWin32\TestSystem.map" -uf "J:\bladir\DelphiCodeCoverage\Script\TestSystem3_dcov_units.lst" -spf "J:\bladir\DelphiCodeCoverage\Script\TestSystem3_dcov_paths.lst" -od "J:\bladir\DelphiCodeCoverage\Report" -lt "J:\bladir\DelphiCodeCoverage\Report\Delphi-Code-Coverage-Debug.log" -html
Im Wizard habe ich den Pfad zu den source files angegeben mit "J:\bladir\_dev\src\System\". Alle Sourcedateien liegen dort oder darunter Ich finde diese Angabe einer keiner der Dateien im Scriptsverezichnis. Woher weiss dann CodeCoverage.exe wo es die Dateien suchen muss? Nimmt das dann etwas das aktuelle Verzeichnis? Das wäre suboptimal. Nachtrag zum vorigem Beitrag. "Quellcode Dateien im falschen ordner gesucht" - ja das dürfte das Problem bei mir sein. Gerne helfe ich damit, habe ja auch Interesse daran. |
AW: Code coverage
Hallo,
warte einfach noch einige Minuten. Dann hab' ich evtl. eine neue Fassung im Development Branch. Was ist dort dann neu:
Grüße TurboMagic |
AW: Code coverage
Habe kurz mal die -sd manuell hinzugefügt zur Batch. Es wird nun wesentlich mehr gemacht als vorher. Gut ist es noch nicht, aber eins nach dem anderen. Ich warte dann mal auf die neue Version <lechz>:-D
|
AW: Code coverage
Dein Durst kann seit eben gestillt werden! ;)
Alle der bisher immer ausgegrauten Optionen unter dem AUsgabeformat Menü sind jetzt auch verfügbar. Ist alles noch im Development Branch. Grüße TurboMagic |
AW: Code coverage
Na, hat das deinen Durst für's Erste gestillt?
Bist du zum Testen gekommen? |
AW: Code coverage
Ich habe mal an diejenigen, die schon CodeCoverage für ihre Unittests nutzen, folgende Fragen:
- Welchen Workflow nutzt ihr dafür? (Klassisches DUnit(X), TestInsight, Ausführung auf dem CI Server, etc) - Wie schaut ihr euch den Coverage Report an? (meines Wissens nach generiert CodeCoverage ja so ein paar HTML Seiten oder auch andere Formate, welche noch weiter verarbeitet werden können). - Wie gut funktioniert DelphiCodeCoverage bei euch? Meine Erfahrung ist, dass es entweder inakkurate Ergebnisse liefert oder sich auch mal mit AVs oder ähnlichem auf den Rücken legt. Ich frage, da es mir schon seit langem ein Befürfnis ist, eine "ganzheitliche" Lösung dafür zu schaffen und speziell in Verbindung mit TI wäre das höchste der Gefühle natürlich, das ganze direkt in der IDE sehen zu können, wie man es auch in VisualStudio kann. Da wir GitLab benutzen und das wunderbar mit dem Cobertura Format klar kommt, um CodeCoverage anzuzeigen, hatte ich mal einen Prototypen für CodeCoverage gebaut, der dieses Format ausspuckt. Daraus wiederum kann man dann mit anderen externen Tools (wie zum Beispiel ![]() |
AW: Code coverage
Zitat:
|
AW: Code coverage
Die aktuelle Version des CodeCoverage kann jedenfalls auch XML im JaCoCo Format ausgeben.
Der Wizard (Version aus dem Development Branch) kann das seit heute Vormittag auch anschalten. Darüberhinaus kann man dort seit heute Vormittag auch optional beliebige Parameter dieses Kommandozeilen Programms angeben, damit auch Dinge nutzbar werden, die ich noch nicht vorgesehen habe. Grüße TurboMagic PS: habe in meiner einen EKON Session zum Unit Testen letzte Woche auch dein TestInsight gezeigt |
AW: Code coverage
Zitat:
|
AW: Code coverage
Zitat:
Nice wäre auch etwas das prüft ob alle seit dem letzten master geändreten Zeilen abgedeckt sind. Aber erst muss das überhaupt mal tun. |
AW: Code coverage
Liste der Anhänge anzeigen (Anzahl: 3)
Zitat:
die ich ursprünglich benutzte (die beim ursprünglichen WIzard dabei war) und der aktruellen, die ich seit heute damit benutze liegen auch irgendwie Welten. Mehrere neue Parameter für Ausgabeoptionen und auch die HTML Ausgabe sieht ganz anders (moderner) aus, inkl. Prozentbalken und Tortendiagrammen. Es stellt sich auch die Frage, ob man das, was im CodeCoverage evtl. noch nicht ganz passt fixen kann. Das Projekt scheint ja schließlich grundsätzlich noch gewartet zu werden und es kann ja auch schon einiges... Anbei mal ein paar Screenshots, die Anzeige ist hierbei die im Delphi Code Coverage Wizard Plus integrierte HTML Anzeige. Mittels Option kann man sich das aber auch im mit HTML Dateien verknüpften Programm anschauen (ShellExec). Grüße TurboMagic |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz