如何使用navigator.geolocation测试dalekjs的webapp

时间:2014-05-28 10:23:28

标签: geolocation dalekjs

我真的很喜欢用dalek为一个需要知道用户位置的应用程序编写一些测试用例。

应用程序通过检查navigator.geolocation的truethieness来检查geolocationsupport。 通过userinput进行回退。

因为浏览器似乎可以识别地理位置,所以dalek(最有可能是phantomjs)会因为询问地理定位而处于挂起状态。

如果不可能,我不需要使用浏览器地理定位功能,但如果不可能,我想获得navigator.geolocation的非truethie值。

我是否有一些选项可以解决这个问题,而无需触摸应用程序本身?

谢谢

1 个答案:

答案 0 :(得分:0)

我从不需要测试需要访问地理位置权限的应用程序, 所以使可测试是未来的ToDo。 测试它的方法是在JSON Wire Spec(https://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/location)中定义的,但我所知道的浏览器/驱动程序都没有支持这一点(可能是Chrome,最近没有测试过)。

所以,我希望在将来的版本中能够得到它。

但如果我理解你是对的,你不需要测试它,你只需要摆脱对话,我不知道如何处理PhantomJS,但我相信你可以摆脱它,如果你将选项传递给Chrome(请参阅DalekJS: start browser with custom flags),但我不知道您需要设置哪个选项(也许您需要稍微考虑一下)。