AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi DUnitX und Boolean Parameter
Thema durchsuchen
Ansicht
Themen-Optionen

DUnitX und Boolean Parameter

Ein Thema von Sherlock · begonnen am 6. Mär 2020 · letzter Beitrag vom 9. Mär 2020
Antwort Antwort
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.798 Beiträge
 
Delphi 12 Athens
 
#1

DUnitX und Boolean Parameter

  Alt 6. Mär 2020, 13:06
Hi,

ich habe soeben den kleinen Zeh ins eisige DUnitX Wasser gesteckt und bin erschrocken zurück gezuckt.

Folgendes probiere ich, ich habe eine Methode einer Klasse, die einen Verbindungsversuch auf einen Webserver initiiert, und gemäß Antwortverhalten des somit "angepingten" eine Property dieser Klasse auf Connected setzt.
Testen wollte ich das mit einem Positiv Fall und einem Negativ Fall. Also so:

Delphi-Quellcode:
 [TestFixture]
  TMyFirstUnitTest = class(TObject)
  private
    TestKomm: TMyKommunikation;
  public
    [Setup]
    procedure Setup;
    [TearDown]
    procedure TearDown;
    // Sample Methods
    // Simple single Test
    [Test]
    [TestCase('PingSuccess', '192.168.110.78, True')]
    [TestCase('PingFail', '127.0.0.1, False')]
    procedure PingTest(IP: string; _Result: Boolean);
Im Test habe ich
Delphi-Quellcode:
procedure TMIVUnitTest.Setup;
begin
  TestKomm := TMyKommunikation.Create;
end;

procedure TMyFirstUnitTest.TearDown;
begin
  TestKomm.Free;
end;

procedure TMIVUnitTest.PingTest(IP: string; _Result: Boolean);
var
  Erg: Boolean;
begin
  TestKomm.ServerIP := IP;
  TestKomm.Ping(True);
  Erg := TestKomm.Connected;
  Assert.IsEqual(Erg = _Result);
end;
_Result wird immer als True an die Testmethode gegeben, was zu falschen Ausgaben im Testrunner führt...erwarte ich da etwas unmögliches, oder mache ich etwas falsch?

Werde erst wieder Montrag antworten können (Wochenende, YAY!)

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: DUnitX und Boolean Parameter

  Alt 6. Mär 2020, 13:22
.. gibt ein ping auf 127.0.0.1 denn nicht immer ein positives Ergebnis zurück.
Diese Adresse existiert immer.

und bei mir gibt es in DunitX kein Assert.isEqual sondern nur assert.AreEqual.

Grüße
Klaus
Klaus

Geändert von Klaus01 ( 6. Mär 2020 um 13:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#3

AW: DUnitX und Boolean Parameter

  Alt 6. Mär 2020, 13:50
Nimm mal das Leerzeichen zwischen dem Komma und dem True/False raus.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.798 Beiträge
 
Delphi 12 Athens
 
#4

AW: DUnitX und Boolean Parameter

  Alt 9. Mär 2020, 08:29
Der Uwe wieder
Danke das war es. Da muss man mal drauf kommen. Ein Trim ist vermutlich unperformant...

Zum "Ping" an sich, ich hatte ja geschrieben, daß ein Webserver angesprochen wird. Der läuft nicht auf meinem localhost, darum habe ich das als Negativtest drin.

Kann ich ja jetzt weiter Tests schreiben. Danke nochmals!

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#5

AW: DUnitX und Boolean Parameter

  Alt 9. Mär 2020, 11:41
Danke das war es. Da muss man mal drauf kommen. Ein Trim ist vermutlich unperformant...
Nö, einfach in der letzten Zeile von TestCaseAttribute.Create in DUnitX.Attributes.pas um das lValues[i] hinzufügen.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#6

AW: DUnitX und Boolean Parameter

  Alt 9. Mär 2020, 12:51
Nö, einfach in der letzten Zeile von TestCaseAttribute.Create in DUnitX.Attributes.pas um das lValues[i] hinzufügen.
Und wenn ich dann mal einen Blank als Parameter übergeben will?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.016 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#7

AW: DUnitX und Boolean Parameter

  Alt 9. Mär 2020, 18:23
Und wenn ich dann mal einen Blank als Parameter übergeben will?
Dann nutzt man eine Bibliothek, wo das Parameter parsen besser ist
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  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 13:52 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