2016-05-05 10 views
8

की संपत्ति 'पता' नहीं पढ़ सकता है मुझे नोडजेस कोड पर परीक्षण के साथ मेरी समस्या का समाधान करने के लिए कुछ मदद चाहिए। मैं मोचा और सुपरटेस्ट का उपयोग कर रहा हूं। मैं supertest में कार्यान्वयन के साथ उलझन में हूँ। मैं इसे हल करने के लिए नहीं जानता। मैं एक फाइल डाउनलोड करने के लिए स्वचालित करने की कोशिश कर रहा हूँ।टाइपरर: अपरिभाषित सुपरटेस्ट

`describe('GET /entry/:entryId/file/:id/download', function(){ 
it('should pass download function', function(done){ 
    this.timeout(15000); 
    request(app.webServer) 
    .get('/entry/543CGsdadtrE/file/wDRDasdDASAS/download') 
    .set('Authorization', 'Bearer eyJ0eXAiOiJKV1QiLCJhbGco') 
    .expect(200) 
    .end(function(err, res){ 
    if (err) return done(err); 
    console.log(err, res); 
    done(); 
}); 
}); 
}); 
+0

मैं पहले से ही शामिल हैं यह धन्यवाद मैं आशा है कि आप मदद कर सकते हैं मुझे भाई – Saitama

+0

यह कहना है कि थेरेस /node-modules/supertest/lib/test.js के साथ एक समस्या। और जब मैं test.js को देखता हूं तो मुझे यह – Saitama

+0

'Test.prototype.serverAddress = function (ऐप, पथ) { var addr = app.address(); अगर (! Addr) this._server = app.listen (0); var port = app.address() पोर्ट; var प्रोटोकॉल = ऐप उदाहरण https.Server? 'https': 'http'; रिटर्न प्रोटोकॉल + ': //127.0.0.1:' + पोर्ट + पथ; }; ' – Saitama

उत्तर

9

मैं जब एक एक्सप्रेस ऐप का परीक्षण मोचा से एक समान त्रुटि प्राप्त हुई। त्रुटि के पूर्ण पाठ:

0 passing (185ms) 
2 failing 

1) loading express responds to /: 
TypeError: app.address is not a function 
    at Test.serverAddress (test.js:55:18) 
    at new Test (test.js:36:12) 
    at Object.obj.(anonymous function) [as get] (index.js:25:14) 
    at Context.testSlash (test.js:12:14) 

2) loading express 404 everything else: 
TypeError: app.address is not a function 
    at Test.serverAddress (test.js:55:18) 
    at new Test (test.js:36:12) 
    at Object.obj.(anonymous function) [as get] (index.js:25:14) 
    at Context.testPath (test.js:17:14) 

मैं यानी

module.exports = app 
3

टाइपप्रति उपयोगकर्ताओं को, जो इस त्रुटि का सामना कर रहे मेरी एक्सप्रेस server.js को यह जोड़ने, सर्वर वस्तु निर्यात से यह तय हो गई, दो बातों की जांच:

  1. एक्सप्रेस सर्वर module.exports = app (@Collin D करने के लिए धन्यवाद)
  2. उपयोग import * as app from "./app" ०१२३८००७३१ होना चाहिए के बजाय गलतimport app from "./app"
+0

यह मेरी समस्या हल हो गया, धन्यवाद! – user752746

+0

@ सैतामा मुझे पता है कि यह पुराना है, लेकिन आपको इसे उत्तर के रूप में चिह्नित करना चाहिए क्योंकि यह मेरे लिए भी हल हो गया है। – Zacho

संबंधित मुद्दे