使用PhantomJS在不友好的iframe中测试元素

时间:2016-01-08 12:28:37

标签: javascript testing iframe phantomjs

有没有人知道是否有可能在phantomjs内的不友好的iframe中测试dom元素?如果有可能,有人会怎么做?

我知道我们需要将webSecurity设置为false,但除此之外,我对iframe没有任何经验。

'web-security': false

访问iframes元素:

"use strict";
var page = require('webpage').create();

page.open('url', function (status) {
   var _count = page.evaluate(function() {
        var matches = document.querySelectorAll('iframe');
        var count = 0;
        [].forEach.call(matches, function(match) {
            var add = 0;
            try {
                add = match.contentDocument.querySelectorAll('div').length;
            } catch (x) {

            }
            count += add;
        });

        return count;
    });

    console.log(_count); // 0 - not true
    phantom.exit();

});

运行PhantomJS

 npm run phantomjs --web-security=false server/tests/unf.js 

1 个答案:

答案 0 :(得分:0)

不要运行本地幻像,必须全局安装phantomj。

npm install phantomjs -g
phantomjs --web-security=false server/tests/unf.js