AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Wann hat sich die Funktion SecondsBetween geändert

Wann hat sich die Funktion SecondsBetween geändert

Ein Thema von v2afrank · begonnen am 21. Aug 2014 · letzter Beitrag vom 21. Aug 2014
Antwort Antwort
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

AW: Wann hat sich die Funktion SecondsBetween geändert

  Alt 21. Aug 2014, 15:39
Ja, und nun kommt es darauf an, mit welchem Wert deine Funktion z.B. dieses SecondsBetween aufrufen würde.

Jenachdem kann der Test deiner Funktion erfolgreich sein, falls du zufällig einen der funktionierenden Fälle erwischts.
Ja und das Gras ist grün ... wir wissen doch alle, dass bei einem Unittest mehrere Situationen geprüft werden müssen. Und wenn ein Bug zurückgemeldet wird, dann wird das als weitere Situation in den Unittest aufgenommen und dann der Bug beseitigt.

Ich sehe so einen Unittest immer als ein lebendiges Gebilde an.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.399 Beiträge
 
Delphi 12 Athens
 
#2

AW: Wann hat sich die Funktion SecondsBetween geändert

  Alt 21. Aug 2014, 15:43
Und wenn du jetzt in allen geprüften Situationen zufällig auf funktionierende Fälle triffst?


Frag mal den Murphy
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#3

AW: Wann hat sich die Funktion SecondsBetween geändert

  Alt 21. Aug 2014, 16:10
Für Unittests bildet man Kongruenzklassen für die Parameter, wählt Kandidaten aus den KK aus und testet mit allen Kombinationen von Parametern.
Beispiel:
"Bei positivem Kontostand werden Guthabenzinsen verwendet, bei negativem die Dispozinsen. Ist der Kontostand 0, wird kein Zinsatzverwendet. Auszudrucken ist der zu verwendete Zinssatz"

Wir haben drei Kongruenzklassen (laut Spec):
1. Alle Guthaben > 0
2. Guthaben = 0
3. Alle Guthaben < 0

Wir generieren Tests für Werte ...
* so in der Mitte einer KK
* so am Rand der KK
* direkt am Rand der KK

Manchmal alle drei, manchmal reichen zwei (Mitte und direkt am Rand) oder nur ein wert (der in der Mitte).

Wie sieht das bei 'SecondsBetween' aus? Wieviele Kongruenzklassen haben wir? Laut Spec 2: "gültiges Datum" und "ungültiges Datum". Bischen wenig.

Mist. Unser Test wird entweder imnmer fehlschlagen (weil wir Glück haben, und Datumse gewählt haben, die nicht passen) oder immer funktionieren. Davon haben wir dann aber nicht viel.

Also: Genau spezifizieren, wie SecsBetween (also 'Seconds between') implementiert werden muss.

Daher mit Tipp: Für Kernfunktionen exakt spezifizieren wie sich die Funktion verhalten soll und im Idealfall das Verfahren angeben. Dann kann man KK bilden und 100% Testabdeckung erzielen.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 10:45 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