Javascript FuncUnit打开一个更宽的窗口?

时间:2014-01-12 02:48:33

标签: javascript functional-testing funcunit

当我尝试使用FuncUnit打开浏览器窗口来运行某些测试时,它打开的窗口太窄,我正在测试的网站隐藏了一些菜单项以使用窄窗口。有没有办法增加窗口的宽度FuncUnit打开所以可以测试这些菜单项的存在?文档对此问题没有任何帮助。

我所拥有的FuncUnit代码非常基本:

test("dummy test", function () {
F.open('http://localhost:8000/');
});

我可以在测试开始运行后手动增加窗口的大小,但这不适用于自动化测试。

编辑:

  • 我挖掘了FuncUnit源代码,发现它将弹出窗口宽度设置为浏览器宽度的一半。改变这个问题解决了这个问题。

其他效果不佳的尝试:

  • 我能够在iframe中测试页面,这可以解决宽度问题。然后所有F('#thing')调用都需要一个额外的参数,所以F('#something',0)。每一个。该死的。时间。
  • 尝试禁用Bootstrap的响应功能。它需要进行大量更改,但它们是详细的here
  • 找到Chrome的插件,强制弹出窗口进入新标签,修复宽度问题。它被称为The One。测试无法与新选项卡通信。

2 个答案:

答案 0 :(得分:0)

查看F.Open()的FuncUnit API和代码,答案似乎是否定的。

F.open()方法签名定义为:open(路径,成功,超时)

无法手动设置高度,宽度。看看它们的来源,他们正在为高度,宽度做自己的内部计算。

FuncUnit F.open

你可以做的是获取他们的git项目并扩展F.open()方法以接受高度,宽度参数。或者只使用JQuery。 FuncUnit似乎是针对单元测试的,因此UI技巧可能是该项目的次要目标。

答案 1 :(得分:0)

F.open()使用F.win.resizeTo(width, height)

的回调中
F.open("desired-url", function onOpenSuccess() {
    F.win.resizeTo(1024, 768);
});