我是否有办法使用PhantomJS进行“隐身模式”,其中所有Cookie,本地存储等只是暂时的,并且不会在进程中持续存在?
这对UI自动化以及一些后端应用程序非常有用。
答案 0 :(得分:2)
否,没有开箱即用的东西,但至少可以为某些类型的数据做些事情。
默认情况下,缓存和cookie仅对一个幻像实例可见,但可以通过从命令行设置文件来启用它们。所以你在这里很好。
其他有问题的功能是applicationCache,localStorage和webSQLDatabase,它是通过从幻像运行modernizr test suite来确定的。
applicationCache 并不是真正的问题,因为在大多数情况下只缓存公共数据。每次运行后都无法清除。
如果您按顺序运行测试,则可以在每次运行后使用localStorage.clear()
清除localStorage (请参阅here)。这可能不是这种情况,因为您可能并行使用多个进程来更快地执行。这里没有真正的解决方案。
仍然无法清除webSQLDatabase :How to delete a database in Web SQL?
这是悲哀地说,有多个问题session handling