Einzelnen Beitrag anzeigen

Scurra

Registriert seit: 19. Jan 2015
81 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Compiler-Schalter in Basis-Units

  Alt 8. Nov 2019, 11:04
Allerdings steht in der readme-fastmm.txt auch:
Zitat:
Delphi / BDS 2006 and later already include FastMM support for leak reporting on shutdown and so does not require the conditional definitions mentioned below for earlier versions of Delphi.
Nun ja, im GUITestRunner von DUnit gibt es Code mit "{$IFDEF FASTMM}", der nicht ausgeführt wird, weil der Compiler-Schalter nicht gesetzt ist. Das führt dazu, dass man die Checkbox für die Memory-Leaks nicht setzen kann.

Wir haben die Unit inzwischen explizit zum Projekt hinzugefügt, damit es neu kompiliert wird, man kann nun die Checkbox auch setzen, aber die Prüfung scheint trotzdem nicht stattzufinden bzw. es wird kein Memory-Leak erkannt, obwohl wir extra welche eingebaut haben für unseren Test.

Zitat:
Für Memoryleak Detection in DUnit/DUnitX Tests empfehle ich die Benutzung von LeakCheck.
Danke, das werden wir uns mal anschauen.

Zitat:
ReportMemoryLeaksOnShutDown:=True kann also direkt in der DPR geschrieben werden.
Soweit ich weiß, führt ReportMemoryLeaksOnShutDown dazu, dass ein Fenster angezeigt wird mit den Memory-Leaks. Das ist sicherlich geeignet, wenn man die Tests manuell startet. Für einen automatischen Build-Prozess ist das leider nicht geeignet.
  Mit Zitat antworten Zitat