2015-07-22 78 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

回答