webdriver能够在假时间,日期或时区运行浏览器吗?


这种功能对我的自动化用途非常有用。 />不过,我在webdriver文档中没有找到任何这种功能。
我猜想这种功能非常复杂,因为它需要拦截和反馈更改后的内核调用。因此,不一定要包含在webdriver中-您能以其他方式告诉我吗?我愿意接受Windows / Linux解决方案。但是,这种方式必须
与webdriver自动化一起使用。 />

评论

您要达到的测试目标是什么?我对您所要求的用途表示怀疑。这表明您正在测试错误的内容。硒用于功能系统测试。带有节点或类似内容的单元测试Javascript。 stackoverflow.com/questions/300855/…

#1 楼

浏览器的日期/时间功能全部是JavaScript。您应该可以使用Sinon.JS或TimeShift.JS来模拟日期/时间。


在测试运行期间注入/添加模拟框架
模拟Date对象JavaScript Executor

设置时区
运行测试

现在对内部Date对象的所有调用都将返回偏移的时间。

有关示例,请参阅带有TimeShift.JS的帖子,尽管此博客使用ruby TimeCop进行时间同步,但该博客文章中也描述了类似的内容。