我的附加组件涉及用户界面,因此为了测试它,我决定只是加载一个html页面,测试人员可以按照页面上的一些说明进行操作。
以下是加载页面的示例:
exports["test interaction"] = function(assert, done) {
require("sdk/tabs").tabs.open({
url: "./tests/test-page.html",
onClose: function(tab) {
assert.pass("Done page test");
done();
});
};
但是,大约16秒后,测试将始终失败,并显示两条错误消息:
fail:
Timed out (after: START)
和
fail:
Should not be any unexpected tabs open
此外,更重要的是,我的插件根本不能使用cfx test
,而它在同一个测试页上使用cfx run
。
有没有办法使用cfx test
加载一些HTML测试页?
答案 0 :(得分:2)
在done()之前添加tab.close()将修复"不应该打开任何意外的标签"错误。
答案 1 :(得分:0)
我认为您需要做的是从您打开的标签中侦听消息,然后手动关闭标签。您可以通过将内容脚本注入选项卡并进行回传来发送消息。类似的东西: