Есть ли способ написать больше тестов с данными с Jestjs?Проверенные данные Jestjs-тесты
я придумал что-то вроде этого:
it('assignments and declarations',() => {
testCases.forEach(function (testCase) {
const slx = fs.readFileSync(testDirectory + 'slx/' + testCase.slx, 'utf-8');
const document = compiler.parse(slx);
const lmsGenerator = new LMSGenerator(document);
const lms = lmsGenerator.generate();
const expected = fs.readFileSync(testDirectory + 'lms/' + testCase.lms, 'utf-8');
expect(expected).toBe(lms);
});
});
Я прочитал вход и ожидаемый результат из файлов. Файлы (и связь между входом и выходом) сохраняются в массиве с объектами. Проблема в том, что я потерял определенные сообщения об ошибках, которые у меня были с несколькими функциями it().
Есть ли способ сделать это лучше? Или использовать индивидуальное сообщение для случая, когда ожидаемый вызов завершится неудачей?
Я попробовал это и получил «Ваш комплект тестов должен содержать хотя бы один тест». Когда я инкапсулирую testCases.forEach вызов с «фальшивым» блоком, внутренний блок никогда не сообщит об ошибке инкапсуляции. – FDeitelhoff
Вот скрипка с примером, использующим жасмин: https://jsfiddle.net/3VuGs/402/. Поскольку шутка использует жасмин, и я сделал то же самое в своем тестовом наборе тестовых тестов, я понятия не имею, почему это не работает для вас. Можете ли вы добавить журналы внутри блока 'it', чтобы узнать, запускает ли jest тесты. –
Интересно, что это работает на вас. Я не могу заставить его работать в моей среде. Но я не уверен, что все настроено правильно. На данный момент я использую WebStorm с модулем jest jpm. Я запускаю тестовый тест jest с простой записью в файле package.config: «scripts»: { «test»: «jest»,}. Может быть, это проблема по сравнению с вашим решением? – FDeitelhoff