禁用PhantomJS中的回调(Javascript)

时间:2017-05-01 11:26:59

标签: javascript c# phantomjs

我在C#中使用PhantomJS作为UI测试框架。我试图在一个动作中单击一个显示确认框的元素,然后在确认框仍然打开的情况下返回到调用C#。然后,我试图回到PhantomJS,在第二个动作中单击对话框上的“确定”。

问题是确认框附带了回调,返回true / false(确定/取消),因此默认行为只会取消确认框。我可以附加我自己的自定义回调,将消息传递给实际(var result = confirm('message'))调用,如下所示:

page.onConfirm = function(msg) {
    console.log('Confirmation box showing for: ' + msg);
    return someBooleanValue;
}

但是由于javascript中的truthy / falsey内容,无论我在这里返回什么,都可以确定或取消确认对话框 - 我似乎无法将其打开。

值得一提的是,我正在尝试使用简单的javascript而不是引入JQuery,因为它是一个测试框架。

我是怎么做到的?

1 个答案:

答案 0 :(得分:0)

为了任何有相同问题的人的利益,基本上答案是你不能这样做。我不得不为这些回调定义默认行为。