2015-07-22 70 views
1

我已经升级到吞掉,摩卡phantomjs版本0.8.0之后的几个问题:通过URL对远程运行时问题与一饮而尽,摩卡phantomjs升级版本0.8.0后

1)错误:

当运行我的测试中对远程URL,我得到以下错误:

ReferenceError: Can't find variable: Mocha 
    at browser-shim.js:27 

在runner.html所需的全部文件似乎是可用的和测试也如预期在这样一个实际的浏览器中运行FF或Chrome。

runner.html:

<!doctype html> 
<html> 
    <head> 
     <meta charset="utf-8"> 
     <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
     <title>Mocha Test Runner</title> 
     <link rel="stylesheet" href="HTTP://localhost:7777/q/p/lj_unittest/test/mocha.css"> 
     <link rel="stylesheet" href="HTTP://localhost:7777/q/p/lj_unittest/css/core.css"> 
    </head> 
    <body> 
     <div id="mocha"></div> 

     <div id="fixture" style="display:none;"> 
      <div id="charset_ascii"> !"#$%&'()*+,-./:;<=>[email protected][\]^_`abcdefghijklmnopqrstuvwxyz{|}~</div> 
      <div id="charset_other">ÄäÆæß</div> 
     </div> 

     <script src="HTTP://localhost:7777/q/p/lj_unittest/js/core.js"></script> 
     <script src="HTTP://localhost:7777/q/p/lj_unittest/test/mocha.js"></script> 
     <script src="HTTP://localhost:7777/q/p/lj_unittest/test/chai.js"></script> 
     <script src="HTTP://localhost:7777/q/p/lj_unittest/test/chai-datetime.js"></script> 
     <script src="HTTP://localhost:7777/q/p/lj_unittest/test/sinon.js"></script> 

     <script> 
      mocha.setup("bdd"); 
     </script> 

     <script src="HTTP://localhost:7777/q/p/lj_unittest/test/backend/ods/charset_backend.js"></script> 
     <script src="HTTP://localhost:7777/q/p/lj_unittest/test/backend/ods/ods.log_backend.js"></script> 
     <script src="HTTP://localhost:7777/q/p/lj_unittest/test/backend/ods/date.js"></script> 

     <script> 
      mocha.run(); 
     </script> 
    </body> 
</html> 

Gulpfile.js:

gulp.task( '试验:后端:ODS',功能(/ 回调 /){ VAR流= mochaPhantomJS( {'reporter':'spec'});

stream.write({path: config.URL_ROOT + '/TEST_WEB_ODS.main'}); 
stream.end(); 

return stream; 

});

2)在一些奇怪的警告(但不是全部)的runner.html为基础的测试:

Unsafe JavaScript attempt to access frame with URL about:blank from frame with URL file:///D:/MyDev/ljs_app/trunk/periscope/build/node_modules/gulp-mocha-phant 
mjs/node_modules/mocha-phantomjs-core/mocha-phantomjs-core.js. Domains, protocols and ports must match. 

runner.html:

<!doctype html> 
<html> 
    <head> 
     <meta charset="utf-8"> 
     <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
     <title>Mocha Test Runner</title> 
     <link rel="stylesheet" href="../../../libs/mocha/mocha.css"> 
     <link rel="stylesheet" href="../../../dist/css/core.css"> 
    </head> 
    <body> 
     <div id="mocha"></div> 
     <div id="fixture" style="display:none;"></div> 
     <script src="../../../dist/js/core.js"></script> 
     <script src="../../../libs/mocha/mocha.js"></script> 
     <script src="../../../libs/chai/chai.js"></script> 
     <script src="../../../libs/chai/chai-datetime.js"></script> 
     <script src="../../../libs/sinon/sinon.js"></script> 

     <script> 
      mocha.setup('bdd'); 
     </script> 

     <!-- START of actual unit test scripts --> 
     <script src="./json.js"></script> 
     <script src="./moment.js"></script> 
     <script src="./underscore.js"></script> 
     <!-- END of actual unit test scripts --> 

     <script> 
      mocha.run(); 
     </script> 
    </body> 
</html> 

Gulpfile.js:

gulp.task('test:frontend:lib', function (/*callback*/) { 
    return gulp.src('test/frontend/lib/runner.html').pipe(mochaPhantomJS({'reporter': 'spec'})); 
}); 

任何帮助表示赞赏!

+0

广告1)在任何其他JS代码通过加载mocha.js解决自身的问题。我不明白为什么,但确实有帮助。 – doberkofler

回答