2017-01-13 6 views
1

frisby apiを分度器と統合しようとしています。私に知らせてtesting.pleaseスペックはfrisby APIとの分度器の統合

var frisby = require('frisby'); 

var base_url = "https://www.distelli.com/docs/tutorials/test-your-nodejs-with-jasmine"; 

describe("Hello World Server", function() { 
    it("first frisbytest", function() { 
     frisby.create('GET JSON data from an endpoint') 
      .get(base_url) 
      .expectStatus(200) 
      .expectHeader('Content-Type', 'application/json') 
      .toss(); 

    }); 

}); 

ファイルが、私はエラー

Error: TypeError: Cannot read property 'prototype' of undefined 
    at Object.<anonymous> (/usr/local/lib/node_modules/protractor/node_modules/frisby/lib/frisby.js:1125:17) 
    at Module._compile (module.js:409:26) 
    at Object.Module._extensions..js (module.js:416:10) 
    at Module.load (/usr/local/lib/node_modules/protractor/node_modules/coffee-script/lib/coffee-script/register.js:45:36) 
    at Function.Module._load (module.js:300:12) 
    at Module.require (module.js:353:17) 
    at require (internal/module.js:12:17) 
    at Object.<anonymous> (/usr/local/lib/node_modules/protractor/SpecFiles/frisby_global_spec.js:1:14) 
    at Module._compile (module.js:409:26) 
    at Object.Module._extensions..js (module.js:416:10) 
    at Module.load (/usr/local/lib/node_modules/protractor/node_modules/coffee-script/lib/coffee-script/register.js:45:36) 
    at Function.Module._load (module.js:300:12) 
    at Module.require (module.js:353:17) 
    at require (internal/module.js:12:17) 
    at /usr/local/lib/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:84:5 
    at Array.forEach (native) 
    at Jasmine.loadSpecs (/usr/local/lib/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:83:18) 
    at Jasmine.execute (/usr/local/lib/node_modules/protractor/node_modules/jasmine/lib/jasmine.js:176:8) 
    at /usr/local/lib/node_modules/protractor/built/frameworks/jasmine.js:119:15 
    at Function.promise `enter code here`(/usr/local/lib/node_modules/protractor/node_modules/q/q.js:682:9) 
    at /usr/local/lib/node_modules/protractor/built/frameworks/jasmine.js:91:14 
    at _fulfilled (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:834:54) 
    at self.promiseDispatch.done (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:863:30) 
    at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:796:13) 
    at /usr/local/lib/node_modules/protractor/node_modules/q/q.js:556:49 
    at runSingle (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:137:13) 
    at flush (/usr/local/lib/node_modules/protractor/node_modules/q/q.js:125:13) 
    at nextTickCallbackWith0Args (node.js:420:9) 
    at process._tickCallback (node.js:349:13) 
[10:12:38] E/launcher - Process exited with error code 100 

の下に取得しています私はJavaScriptに新しいです

// An example configuration file. 
exports.config = { 

//seleniumAddress: 'http://localhost:4444/wd/hub', 
    directConnect: true, 

    // Capabilities to be passed to the webdriver instance. 
    capabilities: { 
    'browserName': 'chrome' 
    }, 

    // Framework to use. Jasmine is recommended. 
    framework: 'jasmine', 

    // Spec patterns are relative to the current working directory when 
    // protractor is called. 
    specs: ['/usr/local/lib/node_modules/protractor/SpecFiles/frisby_global_spec.js'], 

    // Options to be passed to Jasmine. 
    jasmineNodeOpts: { 

    defaultTimeoutInterval: 30000 
    } 

}; 

//それは、APIと分度器の統合をfrisbyされます可能かどうか。はいの場合は問題をデバッグするのに役立つことができますか?

答えて

1

あなたが見ているエラーは、デフォルトでjasmine2をサポートしていますが、現在のところjasmine2と互換性がありません。したがって、jasmine1は現在のところサポートされていません。したがって、突起部付きのfrisbyコンポーネントは使用できません。アラウンド

仕事:私は最近jasmine2サポートはそれのために来ているよう今frisbyのGitHubのレポで別々のPRやブランチに提供されている。この上の良い仕事があり、frisbyと分度器を統合するために管理しました。

frisbyの機能のいくつかをこの回避策を使って分度器で使用することはできますが、すぐに完全サポートが開始されます。

したがって、私のrepo- protractor-frisbyでは、この回避策を使って分度器とfrisbyを統合する方法をチェックアウトすることができます。

注:これは現在のところ限定的なサポートのみを提供しており、間もなく完全サポートが出てきます!