먼저 실제 앱 설정을 모듈로 옮긴 다음 실제로 앱을 시작하는 파일로 가져와야합니다. 이제는 별개이므로 앱을 실제로 듣기 전에 완전한 상태로 유지할 수 있습니다.
앱의 실제 설정을 별도의 파일로 옮기고 app.js라고 부르거나 노드를 실행 한 파일에서 수신자를 호출하여 index.js라고 부르 자고합니다.
var app = require('./app');
app.listen(3000, function(){
console.log("Express server listening on port %d in %s mode", app.address().port, app.settings.env);
});
이가 당신을 허용, 실제로는 듣지 않아도 앱 로딩을 seperates : 같을 것이다
var express = require('express')
, routes = require('./routes');
var app = module.exports = express.createServer();
// Configuration
app.configure(function(){
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(__dirname + '/public'));
});
app.configure('development', function(){
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});
app.configure('production', function(){
app.use(express.errorHandler());
});
// Routes
app.get('/', routes.index);
와하는 index.js :
그래서, app.js는 같을 것이다 그 단위 테스트에 해당 응용 프로그램을로드하십시오.
단위 테스트에서 설정 방법과 분해 방법으로 서버를 가져오고 내릴 수 있습니다. 파일 테스트/app_tests.js에서
:
describe('app', function(){
var app = require('../app');
beforeEach(function(){
app.listen(3000);
});
// tests here
afterEach(function(){
app.close();
})
});
니스 질문 :
그리고 당신의 테스트에서
.나는 나 자신을 잠시 보았다. 그러나 일주일 후 나는 방금 포기했다. 나는 좀비가 정말로 일하기가 짜증이났다. 나는 PhantomJS에 대해 많이 읽었지 만, 직접 시도하지는 않았다. – Pickels