我有一些Protractor e2e测试,我在其中处理时区。在我的本地机器上,他们通过,在Appveyor他们没有。
我发现这是一个时区设置问题(Appveyor上的不同设置)。
有没有办法在测试套件的开头设置时区,并在最后将其恢复原来的时区?
我试过这个解决方案(所以请不要将其标记为重复):Set browser timezone in a Protractor test
我发现这是一个非常丑陋的解决方法。还有什么比较漂亮的东西?
您可以使用PowerShell更新时区并在之后重置。这可以使用AppVeyor environment variables,Get-TimeZone和Set-TimeZone来实现。这是一个appveyor.yml
样本:
init:
- ps: $env:ORIGIONAL_TZ = Get-TimeZone
- ps: Set-TimeZone -Name "Pacific Standard Time"
on_finish:
- ps: Set-TimeZone -Name $env:ORIGIONAL_TZ