使用Window_handles在位置弹出窗口中单击按钮,并带有守夜功能
Use Window_handles to click button in location pop-up, with nightwatch
我在nightwatch中测试了一个函数,该函数要求您共享位置以显示一些结果。每次我与该按钮交互时,浏览器的地理位置默认弹出窗口都会出现,我需要与它交互(接受或取消它)才能继续测试。
为了做到这一点,我尝试了Nightwatchapi文档中提到的acceptAlert
,但没有成功。我在几个地方读到,在这种情况下,你可以使用命令切换到新窗口,比如这里:
browser.window_handles(function(result) {
var handle = result.value[0];
browser.switchWindow(handle);
});
我的问题是,当我无法查看弹出窗口的源代码来获取它的html时,我该如何单击该按钮?或者我还有其他办法可以忽略它吗?
您可以尝试这种语法。它可能起作用:
browser.window_handles(function(result) {
var handle = result.value[0];
this.switchWindow(handle);
this.useXpath(); or this.useCss()
this.click("locator path")
});
试试这个
browser
.click('@buttonPopup')
.acceptAlert();
如果您使用的是页面对象,它将是:
pageObject.click('@buttonPopup',function(){
browser.acceptAlert();
})
window_handles方法将处理"tab"而不是弹出窗口。
PS:记住这一点,phantomjs无法使用acceptAlert/dissubAlert弹出窗口。
所以,最后,我从github得到了这个答案,它说你不能这样做,但你可以将浏览器设置为不再请求批准。不是很令人满意,但是。。。好了,一个变通办法。
相关文章:
- 如何隐藏按钮单击事件上的占位符
- 从Web服务器下载图像按钮单击使用JavaScript
- 在SweetAlert中传递ASP.NET按钮单击事件
- 单选按钮单击可刷新/更改网站的小区域
- 调用按钮单击事件 ajax 加载的用户控件
- 附加 jQuery 代码以在加载和按钮单击时运行
- 在按钮单击时将图像URL数据显示到弹出框中,而无需禁用背景
- 按钮单击服务器单击
- 触发单选按钮单击,并在页面刷新时记住选择
- 如何使用 javascript 而不是使用控制器中的方法在 rails 中呈现部分按钮单击
- jQuery UI 选项卡 - 将参数设置为下一个/上一个按钮单击
- 如何在 Angular JS 中的按钮单击上添加类
- 当元素上有多个类时触发按钮单击事件
- 如何在 HTML 中的按钮单击上更改图像(IMG URL 每次来自服务器)
- 如何使用javascript刷新我的html页面时清除按钮单击
- 阻止后退按钮 - 单击按钮时忽略
- 如何制作按钮.单击“开始时不运行”
- Rails:尝试在按钮单击时渲染部分
- 在页面加载时调用函数,在按钮单击时再次调用函数,但参数不同
- 如何在服务器端的文本中添加按钮单击事件