Я пытаюсь заставить обозреватель тестов VS 2013 с наглостью распознавать тесты QUnit, пока я использую require.js в сочетании с Knockoutjs
Я нашел несколько хороших ресурсов, перечисленных ниже, но я думаю, что у меня должен быть только один недостающий элемент.
Это то, что я использовал, чтобы убедиться, что я правильно использую Qunit и require.js.
Из этого ресурса похоже, что мне также нужен файл Chutzpah.json.
Вот что я могу воспроизвести:
- Если я просто использую наглость и qunit, я могу заставить его работать, поэтому я знаю, что у меня правильно установлена наглость для запуска тестов VS.
пример: testThatWorks.js
test("test that shows up in test explorer", function () {
equal("444test", "444test");
});
- Если просмотреть index.html в браузере, он запускает мои тесты с правильными результатами.
- Если я использую синтаксис определения, он также работает
пример: testThatAlsoWorks.js
define(
function () {
test("Test that also shows up in test explorer.", function () {
equal("444test", "444test");
});
});
- Если я использую синтаксис require для включения любого другого ресурса, он терпит неудачу (это загружает нокаут, но фактически не использует его)
пример: testThatDoesn'tWork.js
define(['knockout'],
function (ko) {
test("Test that doesn't show up in test explorer.", function () {
equal("444test", "444test");
});
});
Вот что показывает обозреватель тестов VS 2013:
Вот соответствующая настройка проекта (есть и другие файлы для моего реального проекта, но я стараюсь не усложнять):
index.html (think I won't need this once I get it working in VS test runner)
tests
references
qunit.css
qunit.js
qunit.html
chutzpah.json
unittestsmain.js (think I won't need this once I get it working in VS test runner)
testThatWorks.js
testThatDoesntWork.js
testThatAlsoWorks.js
Scripts
jquery stuff
require.js stuff
knockout stuff
...
Вот моя наглость.json
{
"Framework": "qunit",
"TestHarnessReferenceMode": "AMD",
"TestHarnessLocationMode": "SettingsFileAdjacent",
"References" : [
{"Path" : "../Scripts/require.js" }
]
}
Это ошибка тайм-аута в файле Chutzpah.log.
Ошибка: Ошибка: тайм-аут при выполнении тестового файла Во время работы: c:\workingfoldertfs\lesa-it\developers\whitezelb\chutzpahexample\chutzpahexample\chutzpahexample\tests\testthatdoesntwork.js vstest.executionengine.x86.exe Ошибка: 0: Время: 12:45:01.2839495; Тема: 34; Сообщение: Безголовый браузер вернулся с ошибкой: время ожидания истекло при выполнении тестового файла