Einzelnen Beitrag anzeigen

Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.382 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: [DUnit] Test für Double Property schlägt fehl

  Alt 26. Mär 2009, 12:21
Hi,

ich gebe zu, dass ich den Sinn deines beispielhaften Unittests nicht ganz verstehe, gehe aber einfach mal davon aus, dass Du im späteren Betrieb nicht nur eine Wertzuweisung prüfen willst, sondern dass einer der Floats aus einer Berechnung kommt. Und spätestens dann erleidest Du Schiffbruch. Deshalb gibts zumindest für mich 2 eiserne Regeln:
1. Verwende keine Floats wo Currency verwendet werden kann (4 Nachkommastellen reichen (d.h. eine maximale Genauigkeit von 3 Stellen nach dem Komma!) + Wertebereich reicht aus)
2. Vergleiche niemals 2 Floats direkt, sondern immer mit der CompareValue-Funktion.

Das bedeutet vielleicht das eine oder andere mal einen etwas höheren Aufwand, ich weiß aber eins: das kann nicht aufgrund der Float-Ungenauigkeiten irgend wann mal schief laufen, weil irgend jemand eine Methode, eine Klasse, eine Funktion nicht genau so einsetzt wie du es dir gedacht hast.

Grüße
Lemmy
  Mit Zitat antworten Zitat