Ситуация: в настоящее время я использую QUnit для тестирования проекта в TypeScript/Javascript, и все работает нормально, когда я запускаю их в браузере.
Проблема: я пытаюсь использовать grunt для запуска тестов QUnit в автономном режиме (мне это нужно для непрерывного интеграционного тестирования), и тесты не работают должным образом.
Конфигурация Вот как я сейчас настроил:
Gruntfile.js
package.json
src/
- Ts source files
test/
- config.js
- Test.ts
- Test.js
- test.html
Gruntfile.js
/*global module:false*/
module.exports = function(grunt) {
grunt.initConfig({
connect: {
server: {
options: {
port: 8000,
base: '.'
}
}
},
qunit: {
all: {
options: {
urls: [
'http://localhost:8000/test/test.html'
]
}
}
}
});
grunt.loadNpmTasks('grunt-contrib-qunit');
grunt.loadNpmTasks('grunt-contrib-connect');
grunt.registerTask('test', ['connect', 'qunit']);
};
package.json
{
// Name, version, description, repo and author fields...
"engines": {
"node": ">= 0.10.0"
},
"devDependencies": {
"grunt": "~0.4.5",
"grunt-contrib-watch": "~0.6.1",
"grunt-contrib-connect": "~0.9.0",
"grunt-contrib-qunit": "~0.5.2"
}
}
И затем у меня есть файл .travis.yml для запуска всего этого. Я не знаю, действительно ли это важно, потому что тесты не запускаются ни в travis, ни в моей локальной среде, но в любом случае вот это:
language: node_js
node_js:
- "0.11"
- "0.10"
before_install:
- "npm install grunt --save-dev"
- "npm install -g grunt-cli"
install:
- "npm install"
- "npm install -g typescript"
script:
- "tsc --module amd --target ES5 ./src/*.ts"
- "grunt test --verbose --force"
А вот часть ошибок в сборке travis: http://puu.sh/eKpWj/35614680e1.png< /а>
(В настоящее время у меня есть около 20 утверждений, которые проходят, когда я запускаю их в браузере. Кроме того, компиляция машинописного текста работает нормально.)
Изменить: и, как кто-то спросил, вот содержимое файла Test.html: http://pastebin.com/LN3igmjc< /а>
Редактировать 2: вот также содержимое config.js:
var require = {
baseUrl: "../src/"
};
localhost
? - person Jordan Kasper   schedule 19.01.2015config.js
? - person Jordan Kasper   schedule 19.01.2015config.js
- person Kewin Dousse   schedule 19.01.2015localhost
(посмотрите на вывод travis): похоже, что где-то все еще что-то не так... - person Kewin Dousse   schedule 19.01.2015