gpt4 book ai didi

javascript - 使用 MozMill 测试独立 XUL 应用程序

转载 作者:行者123 更新时间:2023-11-28 21:19:00 26 4
gpt4 key购买 nike

作为this question的后续,我正在尝试使用 MozMill 来测试独立的 XUL 应用程序(不是 Firefox 扩展)。然而,我还没有“明白”——更具体地说,如何测试基于 XULRunner 的应用程序。

考虑this app , 例如。现在,我可以从命令行运行它,或多或少是这样的:

$ /path/to/xulrunner /full/path/to/mozmillexample/application.ini

我想编写 Mozmill 脚本来测试它。例如,我想编写一个像这样的测试,它具有单元测试的“味道”:

 Components.utils.import("chrome://mozmillexample/content/example.js", example);
var setupModule = function(module) {
module.controller = mozmill.getBrowserController(); // Or what?
}

var testEquals = function() {
jumlib.assertEqual(example.exHello(), "Hello, World!", "Should be equal");
}

我也想编写一些功能测试:

 Components.utils.import("chrome://mozmillexample/content/example.js", example);
var setupModule = function(module) {
module.controller = mozmill.getBrowserController(); // Or what?
}

var testAlerts = function() {
var button = findElement.Elem(document.getElementById('button'));
button.click();
controller.window.assertAlert(); // I bet it does not exist but it gives the idea...
}

但是不幸的是,我没有找到任何有关测试独立应用程序的文档,至少没有解释基本步骤。所以我问:是否可以编写这样的测试?如果可能的话我该怎么做?

最佳答案

我让它与 MozMill 扩展一起工作;解压扩展并编辑以下文件:

  • 将此添加到 install.rdf 的正确位置:

    <em:targetApplication>
    <Description>
    <em:id>mozmill@example.com</em:id>
    <em:minVersion>0.9</em:minVersion>
    <em:maxVersion>1.1</em:maxVersion>
    </Description>
    </em:targetApplication>`
  • 在应用程序的根目录中创建一个文件夹“extensions”(其中有 application.ini、“chrome”和“defaults”文件夹);将解压后的 mozmill 扩展粘贴到此处。

  • 按照 MDC 中所述启用扩展管理器

  • 将 MozMill 扩展代码嵌入到您的 XULRunner 应用程序中:<script src="chrome://mozmill/content/overlay.js"/>

  • 通过添加或修改 %appdata%\Adam Brandizzi\MozMill Example\Profiles\123455.default\extensions.ini:
    [ExtensionDirs]
    Extension0=C:\Users\John\Desktop\myXULApp\extensions\mozmill
    来启用扩展

    • 使用以下JS代码打开MozMill:MozMill.onMenuItemCommand(event);

关于javascript - 使用 MozMill 测试独立 XUL 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6873945/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com