我尝试将位置更改注入 JS/REACT-Application。注册于 的应用程序window.navigator.geolocation.watchPosition
。我的想法是存根“watchPosition”方法以获取回调函数的句柄。然后直接从应用程序调用回调函数。
喜欢:
const watchPositionFake = (successCallback, errorCallback, options) => {
console.debug("PROXY set callback watchPosition");
originalWatchPositionSuccessCallback = successCallback;
};
cy.visit("/", {
onBeforeLoad(win) {
cy.stub(win.navigator.geolocation, "watchPosition").callsFake(watchPositionFake);
}
});
这不适用于在watchPosition
. 但这确实适用于 cypress-step 文件中的功能。(在 console.log 中工作,我看到位置根据我通过发送的值发生变化originalWatchPositionSuccessCallback
)。
知道谁来伪造位置变化吗?