所以我有此测试需要我运行,并且它是基于时间的。 Kinda就像是在特定日期之间进行的打折活动。我想在浏览器中伪造系统日期。
该网页在加载后立即检查系统日期。那么有什么办法可以在加载之前更改日期。现在,我可以注入javascript,它仅在函数中模拟日期。
((JavascriptExecutor) driver).executeScript("var dateYouWant = 1534413600000; Date.prototype.getTime = function() { return dateYouWant; };");
是否可以永久更改日期或直到关闭浏览器?
答案 0 :(得分:1)
您是否曾尝试使用cmd和Runtime更改系统时间?在Windows中有效。
Runtime.getRuntime().exec("cmd /C time " + "12:13:35");
对于MAC / Linux,您可以使用Bash可执行文件。
Runtime.getRuntime().exec("/bin/bash -c your_command");
例如,在Ubuntu中,我使用以下命令更改时间:
sudo date --set="2018-08-08 10:05:59.990"
将其放在bash脚本中,并按照我上面提到的方式使用它。