我想测试我在Travis CI上使用Express框架和MongoDb创建的其余api服务。测试在本地机器上运行,但在Travis CI上失败。我猜测问题出在我的.travis.yml和package.json上。测试在Travis CI上使用Node.js(Express)构建的REST api
这里是我在本地运行我的测试:
// opens mongodb database on port 27017
mongod
// reads the db and returns documents depending on the request
node express.js
// test CRUD operations on the app
mocha express.test.js
我如何可以做同样的特拉维斯CI?这是我的应用程序https://github.com/mujuni88/Express-RestApi-Tutorial。
travis.yml:
language: node_js
node_js:
- "0.10"
- "0.9"
services: mongodb
script:
- "./node_modules/mocha/bin/mocha *.test.js"
的package.json:
{
"name":"express-restapi",
"author":"Joe Buza",
"description":"Express RestApi",
"version": "0.0.1",
"private": true,
"keywords":["angular", "mocha", "mongodb", "express"],
"license":"BSD",
"dependencies": {
"express":"3.4.4",
"mongoskin":"0.6.0"
},
"devDependencies":{
"mocha":"1.13.0",
"expect.js":"0.2.0",
"superagent":"0.15.7"
},
"scripts":{
"start":"node express.js"
}
}
什么是TravisCI错误?我认为你需要摩卡在依赖不只是devDependencies,不是? – Azat
错误是“未捕获的错误:预计{code:'ECONNREFUSED',”。有关更多信息,请查看此链接:https://travis-ci.org/mujuni88/Express-RestApi-Tutorial/jobs/13346827。这可能与mongodb有关? – cantfindaname88
我有同样的问题!如果我把“node express.js”放在.travis.yml中,它只会让travis挂在那里。此方法仅适用于本地计算机。你是如何解决这个问题的? –