AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Code coverage

Ein Thema von TurboMagic · begonnen am 9. Nov 2022 · letzter Beitrag vom 23. Nov 2022
Antwort Antwort
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.047 Beiträge
 
Delphi 12 Athens
 
#1

AW: Code coverage

  Alt 18. Nov 2022, 20:57
Habe nun das neueste geladen. (Revision: 9b3242bda87c795790a6b6b7f9cab8ef30ab77a0 / Date: 17.11.2022 21:08:28)

Ese ist nicht dabei? Also dproj geladen und versucht zu compilieren. Folgende Meldung kam:
Code:
[Exec Error] The command "copy /Y "c:\devtools\embarcadero\studio\22.0\Redist\win32\WebView2Loader.dll" ..\Binaries\Win32\Debug\
" exited with code 1.
Eine Datei "WebView2Loader.dll" gibt es nicht dort.
Habe eine andere Datei "WebView2Loader.dll" dorthin kopiert und die exe selbst gestartet.

Ich versuche mal ein anderes Testprojekt.
- Script und Report Ordner sollten angelegt werden wenn sie nicht schon existieren
- Es kam kurz eine Fehlermeldung "Failure running the batch file. Failure code: 1" beim Ausführen der Batch. Danach hängt der Wizard mit der "Sanduhr" und muss und kann beendet werden. Ich mache in die Batch mal ein "Pause" dazu. Nun sehe ich "Der Befehl ""..\..\Coverage_x64.exe"" ist entweder falsch geschrieben oder konnte nicht gefunden werden."
Wenn ich den absoluten Pfad zu der CodeCoverage_x64.exe eintrage startet er zumindest mal. Als Ergebnis aber nur 6 HTML-Dateien bei über 100 Sourcedateien. Auch hier wieder fast alle skipped

Zum Wizard hätte ich noch einige Fehlermeldungen und Unschönheiten. Wenn aber nicht mal das eigentliche Coverage funktioniert ist das für mich zweitrangig.
Ok, das mit den Pfaden für die Batch und lst Dateien sowie dem Report Ausgabepfad hab' ich jetzt so gelöst, dass diese beim Speichern ggf. erzeugt werden, siehe Development Branch. Zur WebView2Loader.dll: falls die in einer Standard Delphi Installation nicht vorhanden ist, kann man die unter EdgeView2SDK in GetIt nachinstallieren. Falls das also nötig sein sollte, müssen wir das in der Readme erwähnen. Kann man den Fehler beim Kopieren durch ein Voranstellen
von "if exist $(BDS)\Redist..." unterdrücken? Man könnte dann vor dem Versuch den generierten HTML Report anzuzeigen prüfen ob die Datei vorhanden
ist und falls nicht auf das EdgeView2SDK verweisen...
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.047 Beiträge
 
Delphi 12 Athens
 
#2

AW: Code coverage

  Alt 19. Nov 2022, 17:49
Ok, zwei Dinge:

1. Ich kann das mit den Unit Namen die einen . enthalten jetzt schon mal nachstellen.
Nächster Schritt wäre das Beseitigen in CodeCoverage.exe. Dann wären wir glaube ich
einen größeren Schritt weiter.

2. Im Wizard hab' ich mehrere kleine Bugfixes vorgenommen:
- Öffnen eines Projektes über das linke menü fügt es gleich der Liste zuletzt benutzer
Projekte hinzu
- Dieser Liste wurde als erster Eintrag auch immer ein "leeres Projekt" hinzugefügt.
Das passiert nicht mehr.
- Die Logik, die beim Ändern des Basis Quellcode Pfades aufgerufen wird, wird nun durch
einen Timer verzögert aufgerufen

Grüße
TurboMagic
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.047 Beiträge
 
Delphi 12 Athens
 
#3

AW: Code coverage

  Alt 20. Nov 2022, 10:50
Neuer Commit im Development Branch:

- versuchsweise COdeCoverage Binaries aktualisiert, Punkt im Unitnamen problem scheint aber weiterhin zu bestehen
auch wenn deren Entwickler angeblich was geändert hatten
- Der .DCCP Dateityp kann jetzt für Öffnen und direktes Ausführen aus dem Explorer für den aktuellen Benutzer
registriert werden. Das ist so aber noch nicht, wie es endgültig sein soll. Wird auch in der Uninstall Methode
noch nicht wieder entfernt.

Grüße
TurboMagic
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.686 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

AW: Code coverage

  Alt 20. Nov 2022, 11:38
Ich habe mir gerade mal den Sourcecode des CodeCoverage Tools selbst angeschaut.

So, wie ich das interpretiere, startet es das zu prüfende Executable als Debugger, setzt jede Menge Breakpoints (vermutlich einen für jede Code-Zeile), logt dann jede Breakpoint-Exception (von Windows) und disabled anschließend diesen Breakpoint, denn die Zeile wurde ja dann schon aufgerufen.

Coole Sache. Damit könnte man noch deutlich mehr machen, z.B. einen Trace des Programmablaufs, ohne dass man dazu irgendwas am Code ändern müsste.

Weiß jemand woher der Debugging-Code stammt? Der ist vermutlich nicht nur für dieses Tool geschrieben worden. Die Kommentare geben dazu nicht viel her.
Thomas Mueller
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.047 Beiträge
 
Delphi 12 Athens
 
#5

AW: Code coverage

  Alt 20. Nov 2022, 13:01
Frag' doch die Macher des betreffenden GitHub Projektes...
Im schlimmsten Fall ein Issue dazu anlegen, manchmal gibt's da ja die Kategorie "Frage".
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:51 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