Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Softwaretests und Qualitätssicherung (https://www.delphipraxis.net/86-softwaretests-und-qualitaetssicherung/)
-   -   DUnitX GUI? bzw. eigene Quellcodes vorkompilieren? (https://www.delphipraxis.net/213666-dunitx-gui-bzw-eigene-quellcodes-vorkompilieren.html)

himitsu 6. Sep 2023 02:18

DUnitX GUI? bzw. eigene Quellcodes vorkompilieren?
 
Benutzt denn niemand das inzwischen im Delphi mitgelieferte DUnitX und dessen GUI?
Zitat:

[dcc64 Fehler] E1026 Datei nicht gefunden: 'DUnitX.Loggers.GUI.VCL.dfm'
Bzw. kompiliert niemand seine eigenen Komponenten/SharedCodes vor und stellt seinen Projekten nur noch die DCUs bereit?
  • Nur den/die DCU-Ausgabepfad(e) und eventuell noch den/die DCP-Ausgabepfad(e) im Compiler-Suchpfad (SearchPath/LibraryPath)
  • und optional die Sourcen (PAS) bloß im Editor-Suchpfad (BrowsingPath)


https://quality.embarcadero.com/browse/RSP-42284

dummzeuch 6. Sep 2023 07:50

AW: DUnitX GUI? bzw. eigene Quellcodes vorkompilieren?
 
Einfache Antwort: Nein.

Alles, was es auch aus anderen Quellen im Sourcecode gibt, verwende ich von dort. Die von Embarcadero mitgelieferten Bibliotheken sind in der Regel veraltet und, wie Du bemerkt hast, unvollständig.

Uwe Raabe 6. Sep 2023 08:10

AW: DUnitX GUI? bzw. eigene Quellcodes vorkompilieren?
 
Interessanterweise gibt es separate Compiler Parameter für die Units (-U) und die Ressourcen (-R). Damit ließen sich die DFMs im Source problemlos an den Compiler übergeben ohne dass er die Unit-Sourcen sieht. Für die übersetzten Ressourcen gibt es in den Einstellungen auch einen separaten Eintrag, aber leider nicht für die nicht-übersetzungsrelevanten und auch nicht in den Projekt-Optionen. Neben den entsprechenden Einstellungen in der IDE müssten dann aber noch Anpassungen in den .targets erfolgen.

himitsu 6. Sep 2023 09:24

AW: DUnitX GUI? bzw. eigene Quellcodes vorkompilieren?
 
Im Code sind sie ja drin, aber wäre toll, wenn man ohne die Commanozeile sowas direkt nutzen könnte. :cyclops:

Vollständig ist es ja, nur halt nicht alles im "Standard"-Suchpfad zu finden.

Jens01 6. Sep 2023 09:50

AW: DUnitX GUI? bzw. eigene Quellcodes vorkompilieren?
 
Ich habe jetzt schon länger nicht mehr die Entwicklung verfolgt.
Die mitgelieferte GUI war eher nicht so gut. Dieser in die IDE eingebettete GUI fand ich ganz schlimm.

Ich habe für meine Entwickungen eine neue, eigene GUI gebaut. Die funktioniert bis auf kleine Bugs eigentlich ganz gut.

Uwe Raabe 6. Sep 2023 10:00

AW: DUnitX GUI? bzw. eigene Quellcodes vorkompilieren?
 
Zitat:

Zitat von Jens01 (Beitrag 1526536)
Dieser in die IDE eingebettete GUI fand ich ganz schlimm.

Wenn du damit TestInsight meinst, das finde ich eigentlich eine geniale Lösung. Die DUnitX-GUI verwende ich gar nicht. In der IDE nutze ich TestInsight und im FinalBuilder die entsprechende Action.

Jens01 6. Sep 2023 10:11

AW: DUnitX GUI? bzw. eigene Quellcodes vorkompilieren?
 
"TestInsight", ja, das meinte ich.
Naja,vermutlich habe ich das System nicht verstanden.
Ich entwickle mit dem Testsystem auch. Ich muss also die Testunits debuggen, die Ergebnisse sehen usw. Das war mir mit TestInsight zu umständlich. Ich habe jetzt wieder so ein System wie bei DUnit (etwas aufgepimpt). Hängt von VST und OTL ab.
Wenn interesse da ist, kann ich auch veröffentlichen. Ist jetzt aber auch nicht so was wildes.

himitsu 6. Sep 2023 13:40

AW: DUnitX GUI? bzw. eigene Quellcodes vorkompilieren?
 
Nja, dass öfters bei Vorkomplilierten so Einiges fehlt, ist mehr allgemein ... DUnitX war nur ein aktueller Fall, wo es wieder auffiel.


TestInsight ist im Delphi wohl nicht vorinstalliert.

Abgesehn, dass die DUnitX-GUI bei mir irgendwie nicht funktioniert...
Der ConsoleLogger läuft anstandslos durch.
Die GUI meint nach, den ersten 1-2 Tests irgendwas vonwegen "doppelt sei nicht erlaubt", oder so, und bricht ab (alle Knöpfe disabled und nichts geht mehr).

https://www.delphipraxis.net/213644-...ml#post1526527
im aktuellen Delphi 11.3

Delphi-Quellcode:
uses
  System.Types, System.SysUtils, Winapi.Windows, System.Diagnostics,
  {$IFDEF TESTINSIGHT} TestInsight.DUnitX, {$ENDIF}
  {$IFDEF DUnitX} DUnitX.TestFramework, DUnitX.Loggers.Console, {$ENDIF}
  {$IFDEF DUnitXGUI} DUnitX.Loggers.GUI.VCL, {$ENDIF}
  ...;

procedure UnitTests;
begin
  {$IFDEF DUnitX}
    {$IFDEF TESTINSIGHT}
      TestInsight.DUnitX.RunRegisteredTests;
    {$ELSE}
      {$IFDEF DUnitXGUI}
        DUnitX.Loggers.GUI.VCL.Run;
      {$ELSE}
        var Runner := TDUnitX.CreateRunner;
        var Logger := TDUnitXConsoleLogger.Create(False);
        Runner.AddLogger(Logger);
        var Results := Runner.Execute;
//        if not Results.AllPassed then
//          raise {ETestFrameworkException}Exception.Create('Tests failed');
      {$ENDIF}
    {$ENDIF}
  {$ENDIF}
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:30 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