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
Seite 3 von 8     123 45     Letzte »    
Benutzerbild von dummzeuch
dummzeuch

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

AW: Code coverage

  Alt 12. Nov 2022, 12:57
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="...."
Thomas Mueller

Geändert von dummzeuch (12. Nov 2022 um 13:04 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

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

AW: Code coverage

  Alt 12. Nov 2022, 13:07
Sollte der Tools-Menü Eintrag keine Parameter haben? Sowas wie das aktuelle Projekt?
Thomas Mueller
  Mit Zitat antworten Zitat
TurboMagic

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

AW: Code coverage

  Alt 12. Nov 2022, 14:03
Sollte der Tools-Menü Eintrag keine Parameter haben? Sowas wie das aktuelle Projekt?
Hallo,

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
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

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

AW: Code coverage

  Alt 12. Nov 2022, 14:24
Sollte der Tools-Menü Eintrag keine Parameter haben? Sowas wie das aktuelle Projekt?
2. Das fände ich nur dann sinnvoll, wenn es da einen Platzhalter für das aktuell in der IDE geladene Projekt gibt.

=> Ich bin nicht komplett abgeneigt, aber eben nur, wenn die Rahmenbedingungen passen.
Es gibt zwei Platzhalter, die sich anböten:
  • $PROJECT = Name des aktuellen Projekts
  • $EXENAME = kompletter Pfade des erzeugten Executables (des aktuellen Projekts)

(GExperts macht anscheinend den Tool-Properties Dialog in Delphi 11 kaputt, habe ich gerade bemerkt. )

Zitat:
Aber es ist ja ein Open Source Projekt...
Ist mir beinahe entgangen.
Thomas Mueller

Geändert von dummzeuch (12. Nov 2022 um 15:45 Uhr)
  Mit Zitat antworten Zitat
TurboMagic

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

AW: Code coverage

  Alt 12. Nov 2022, 18:13
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:
  • -?: Anzeige des Versionsinfobildschirms, der wurde um einen kurzen Hilfetext zu den Kommandozeilenparametern ergänzt
  • -O <Dateiname> : öffnet die angegebene Datei, im Fall einer dpr/dproj wird daraus der DCCP Dateinameabgeleitet
  • -R <Dateiname> : öffnet die angegebene Datei und führt gleich den Testlauf aus, im Fall einer dpr/dproj wird daraus der DCCP Dateinameabgeleitet

Ist das ein nützlicher Fortschritt?

Grüße
TurboMagic
  Mit Zitat antworten Zitat
TurboMagic

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

AW: Code coverage

  Alt 13. Nov 2022, 11:03
Hallo,

es gibt eine neue Version 1.10:
https://github.com/MHumm/delphi-code...eases/tag/V1.1

Die Release notes beschreiben was sich seit der V1.0 vor ein paar Tagen alles getan hat.

Grüße
TurboMagic
  Mit Zitat antworten Zitat
freimatz
Online

Registriert seit: 20. Mai 2010
1.446 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: Code coverage

  Alt 15. Nov 2022, 08:42
Magst Du mytbo oder sonst wer mir helfen?
Der Wert für OutputDirectory fehlt! Dieses Verzeichnis wird mit dem Switch -od gesetzt.
Das wird es damals wohl wohl sein. Es stand da
Code:
-od directory      -- the output directory where reports shall be
                       generated - default is current directory
Und aufgrund dem "default" kam ich nicht auf die Idee dass das gesetzt werden müsse.

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.
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.

Geändert von freimatz (15. Nov 2022 um 10:11 Uhr)
  Mit Zitat antworten Zitat
TurboMagic

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

AW: Code coverage

  Alt 16. Nov 2022, 08:48
Hallo,

danke schon mal für's Testen!
Und ja: das hat sicher auch noch Kinderkrankheiten.

Magst Du mytbo oder sonst wer mir helfen?
Der Wert für OutputDirectory fehlt! Dieses Verzeichnis wird mit dem Switch -od gesetzt.
Das wird es damals wohl wohl sein. Es stand da
Code:
-od directory      -- the output directory where reports shall be
                       generated - default is current directory
Und aufgrund dem "default" kam ich nicht auf die Idee dass das gesetzt werden müsse.
Die aktuelle Version des Wizards (also nicht die V1.0 im GetIt) gibt für -od in der Batch Datei nun artig
das eingegebene Ausgabeverzeichnis an.

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.
Magst du mir sagen welche Optionen nicht gleich verständlich waren?

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.
An dem next hab' ich glaube ich letztens noch was gemacht, bin mir aber auch nicht sicher, ob das in jeder Situation
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.

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"?
Ja, Run führt nur die Batch Datei aus. Sollte das geändert werden?
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?

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äää!
Hm, da stellt sich zum einen die Frage, ob alle gewünschten Dateien unterhalb eines bestimmten ordners liegen (ggf. in Unterordnern)?
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.

(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.)
Das müsste man dort mal nachschauen. Damit hab' ich mich bisher nicht so richtig befasst, da ich ja einen Wizard drumherum schreiben wollte

Nachträge:
1. Natürlich muss nicht nur das Testprojekt eine map enthalten, sondern auch das Package mit dem Produktivcode.
Gibt es dazu irgendwo eine Fehlermeldung
Mit der map ist die Ausgabe nun schon wesentlich umfangreicher, jedoch immer noch fehlt das meiste.
Mir ist da bisher keine Fehlermeldung bekannt. Aber: müsste die map Datei in dem Ordner, den man im Wizard als Stammordner
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.

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.
Hm? Die Source Datei im Win32\Debug Ordner des projektes?
Oder hab' ich dich da falsch verstanden?

Grüße
TurboMagic
  Mit Zitat antworten Zitat
TurboMagic

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

AW: Code coverage

  Alt 16. Nov 2022, 09:50
Die Fragestellung, warum die Quellcode Dateien im falschen ordner gesucht werden hab'
ich auch beim CodeCoverage Projekt mal aufgeworfen:
https://github.com/DelphiCodeCoverag...rage/issues/33

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
  Mit Zitat antworten Zitat
freimatz
Online

Registriert seit: 20. Mai 2010
1.446 Beiträge
 
Delphi 11 Alexandria
 
#30

AW: Code coverage

  Alt 16. Nov 2022, 10:14
(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:
"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
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.

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.

Geändert von freimatz (16. Nov 2022 um 10:55 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 8     123 45     Letzte »    


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 15:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz