我为Atom制作了一个包,而Travis CI一直告诉我我的构建失败了 更新:我创建了一个空白的spec文件,现在我的构建正在传递。
您可以在此处查看我的套餐:https://travis-ci.org/frayment/language-jazz
控制台告诉我:
sh: line 105: ./spec: No such file or directory
Missing spec folder! Please consider adding a test suite in
我在GitHub上查看Atom软件包以获得'规范'文件和它们似乎是基于CoffeeScript的,但我无法理解它们包含的内容。关于这个主题没有太多的文档,所以:
什么是'规范'文件,我该放什么?
非常感谢帮助。
答案 0 :(得分:2)
./spec
目录应包含Jasmine Specifications的一个或多个Atom Package you are developing,例如,此规范取自Atom文档:
describe "when a test is written", ->
it "has some expectations that should pass", ->
expect("apples").toEqual("apples")
expect("oranges").not.toEqual("apples")
开源软件面临的最大挑战之一是在大量个人贡献者提供代码时保持质量,一个解决方案是提供high level of test coverage:
与编程的大多数方面一样,测试需要体贴。 TDD是一个非常有用但肯定不足以帮助您获得良好测试的工具。如果你仔细考验,我会期望在80年代或90年代的覆盖率。我会怀疑100%这样的事情 - 它会闻到有人在编写测试以使覆盖数字变得愉快,但却没有想到他们正在做什么。
在Atom的情况下,所有规范都会添加到./spec
文件夹中,并且必须以-spec.coffee
结尾,例如,如果您正在创建名为awesome
的程序包并且您的代码已经坐了在/awesome.coffee
内,您的规范将为./spec/awesome.coffee
。您的规范应该运用代码的关键区域,以便在将pull requests提交到主分支时为您提供信心。
我在Atom.io上有一个couple packages,并且这些都包含了测试,欢迎您使用这些作为如何编写Jasmine 1.3测试支持的具体示例你的包的功能。同样,Atom.io上的大多数软件包也有一组测试可供您构建自己的测试套件。