Ich schreibe eine Webanwendung, die eine Art Zeitplan enthält. Nach einer bestimmten Aktion wird der Zeitplan aktualisiert und wenn der Benutzer die Seite an diesem Tag besucht, passiert etwas.Wie testen Sie funktional, dass etwas zu gegebener Zeit passieren soll?
Haben Sie Ideen, wie Sie einen funktionalen (Akzeptanz-) Test für diese Art von Funktionalität schreiben können?
Ich schreibe diese Ende-zu-Ende-Tests mit Selen. Die einzige Idee, die ich habe, ist die Möglichkeit, den Server zu zwingen, ein bestimmtes Datum zu verwenden, indem man eine URL wie /set-fixed-time?time=...
, dann nach dem Testbesuch /set-real-time
besucht.
Auf dem Server würde ich ein benutzerdefiniertes Objekt verwenden, um die aktuelle Zeit zu erhalten, und dieses Objekt würde ausgetauscht werden, wenn eine der URLs besucht wird.
Gute Punkte, danke. Und ich könnte einfach vergessen, den Zeitanbieter anstelle der Systemzeit zu verwenden. Ich würde diese/set - * - Zeit-Dienste in der Produktionsumgebung deaktiviert. –