1

Dojo DOH 示例和教程似乎没有涵盖这种情况。我有一个服务器 url,我想为其编写测试。我希望目标页面显示在 TestPage 选项卡中,然后针对它运行多个测试。我能找到的最接近的例子是一个 html 文件,它定义了一些测试,然后是正文中的一个小部件,但我无法使用我无法控制的 url 来做到这一点。我已经使用触发robot.init 函数的页面完成了它,但我想使用测试运行器页面。

4

1 回答 1

0

我终于想出了这个:

   ...
     doh.register("login tests", [

        {
            name: "load",
            timeout: 20000,
            runTest: function(){
                var d = new doh.Deferred();
                testPage = dom.byId("testBody");
                console.log("in load, testPage: " + testPage);
                doh.showTestPage();
                testPage.src = path;

                robot.sequence(function() {
                        console.log("in load, sequence: ");
                        testpageBody = testPage.contentDocument.getElementsByTagName("body")[0];
                        console.log("in load, testpageBody: " + testpageBody);
                        var bdy = query(".headerFooterLoaded", testpageBody)[0];
                        console.log("in load, headerFooterLoaded: " + bdy);
                        if (!!bdy) {
                            d.callback(true);
                        } else {
                            d.errback(new Error("Node with class 'headerFooterLoaded' not found."));
                        }
                    }, 8000);
                    return d;
               }
      },

...我试图捕捉 iframe onload 事件,但没有运气。

希望这可以帮助某人

于 2013-10-03T14:11:31.667 回答