我正在尝试让travis-ci用jasmine-node测试我的nodejs模块。当我从命令行运行测试时,它们都通过了,但无论出于什么原因,Travis总是报告我的构建失败。我的.travis.yml看起来像这样:
language: node_js
node_js:
- 0.6
- 0.8我的package.json是这样的:
"scripts": {
"test": "jasmine-node tests/*.spec.js"
}我尝试在我的travis.yml中添加一个before_script
language: node_js
node_js:
- 0.6
- 0.8
before_script:
- "sudo npm i -g jasmine-node"有什么想法吗?
发布于 2012-09-10 13:07:32
在花了一些时间使用travis-ci lint web app之后,看起来它只是归结为我的.travis.yml文件中的格式问题。我的文本编辑器是插入制表符,其中yaml似乎只要求您使用空格。为了更好地衡量,我还在所有内容周围添加了引号。
在确保我只使用了单个空格和换行符之后,它现在看起来是这样的:
language: node_js
node_js:
- "0.6"
- "0.8"
before_script:
- "npm i -g jasmine-node"发布于 2014-10-18 03:17:11
这里有一个存储库,其中包含一个启动jasmine-node测试的travis版本的工作示例:https://github.com/yosethegame/yosethegame。
请注意,package.json声明了travis将在其npm安装阶段安装的jasmine-node依赖项。
发布于 2014-10-12 18:19:02
前段时间我遇到了一个类似的问题,当时我正在使用jasmine-node -g,因为它是一个简单的kata,所以我认为没有必要在文件夹中添加一个package.json,但是当我使用travis-ci集成相同的项目时,为了能够配置它,我经历了地狱。
随着时间的推移,我学会了更好地保持事情的完整性,使用友好的package.json而不是全局安装(这里有一个很好的帖子在谈论它,例如:Why to avoid global test runners )
我的建议是将jasmine-node添加到package.json中,如下所示
{
"name" : "XXX",
"version" : "1.0.0",
"devDependencies" : {
"jasmine-node" : "latest"
},
"scripts" : {
"test" : "jasmine-node specs/*spec.js"
}
}不仅使用travis-ci集成,还可以节省其他人的时间,以防有人想要重用您所做的工作。;)
https://stackoverflow.com/questions/12336566
复制相似问题