getEval引发了一个异常:丢失;在声明之前

时间:2013-06-28 06:16:22

标签: selenium selenium-rc

Selenium getEval引发错误:Error: getEval(${descr}): Threw an exception: missing ; before statement

代码:

var soda = require('soda')
    , assert = require('assert');
var browser = soda.createClient({
    host: 'localhost'
    , port: 4444
    , url: 'http://jquery.com'
    , browser: 'firefox'
});
browser.session(function(err){
    browser.open('/', function(err, body, res){
        browser.storeEval("window.jQuery('meta[name=description]').attr('content');", "descr", function(err, body, res){
            browser.getEval('${descr}',function(err,val){
                if(err !== null) throw err
                console.log(val)
                browser.testComplete(function(){ });
            });
        });
    });
})

看似问题出在我的javascript表达式中:window.jQuery('meta[name=description]').attr('content');

...虽然它适用于浏览器控制台。

另一种表达...... window.jQuery('.logo').height(); ......相同的代码工作:

var soda = require('soda')
    , assert = require('assert');
var browser = soda.createClient({
    host: 'localhost'
    , port: 4444
    , url: 'http://jquery.com'
    , browser: 'firefox'
});
browser.session(function(err){
    browser.open('/', function(err, body, res){
        browser.storeEval("window.jQuery('.logo').height();", "height", function(err, body, res){
            browser.getEval('${height}',function(err,val){
                if(err !== null) throw err
                console.log(val)
                browser.testComplete(function(){ });
            });
        });
    });
})

0 个答案:

没有答案