Запуск юнит-тестов для машинописи в VS
Я нашел пару примеров запуска модульных тестов для машинописи. Все они основаны на ссылках на файлы ts и js, например
/// <reference path="../Calc.ts" />
/// <reference path="../Calc.js" />
К сожалению, когда я пытаюсь сослаться на файл js, я получаю следующую ошибку:
Incorrect reference: referenced file: "../Calc.js" cannot be resolved.
Если эталонный тестовый исполнитель отсутствует, не загружается тестируемый js-файл и тест не выполняется.
Есть идеи? В идеале я хочу запустить тесты в VS Test Explorer или в тестовом сеансе Resharper.
2 ответа
Вы можете использовать Chutzpah для этого
С Chutzpah вы можете запускать свои тесты из командной строки и интегрировать свои тесты с Visual Studio Test Explorer.
Chutzpah позволяет вам решить, хотите ли вы запускать тесты из файлов.ts, .js, .html или всех них.
Он также позволяет загружать внешние файлы.js (например, зависимые библиотеки) из файла модульного теста.ts с его конкретными :
/// <chutzpah_reference path="lib/jquery-1.9.1.min.js" />
/// <reference path="src/YourFileToBeTested.ts" />
Ваши модульные тесты могут быть написаны на TypeScript.
Вы можете установить Chutzpah из Visual Studio/ Инструменты / Расширения и обновления.
Нет абсолютно никакой причины включать ссылку на файл JS:
/// <reference path="../Calc.js" />
Использование для /// <reference
должен предоставить компилятору информацию о типе информации, присутствующей в другом файле. Он не имеет последствий во время выполнения, только влияет на время компиляции. И все последствия времени компиляции (typeinfo, генерация кода) учитываются, когда вы это сделали:
/// <reference path="../Calc.ts" />