Я использую шутку для тестирования своего приложения React и настроил простой тест для имеющейся у меня служебной функции, но получаю сообщение об ошибке:
Ошибка: ваш набор тестов должен содержать хотя бы один тест.
Проверили мою реализацию, и я думаю, что все правильно - может ли кто-нибудь взглянуть на меня?
Файловая структура для теста и функции следующая
- __tests__
-- sumObjectValues-test.js
- utils
-- sumObjectValues.js
sumObjectValues.js
выглядит следующим образом:
const sumObjectValues = (obj, identifier) => {
return obj
.map((el) => { return el[identifier]; })
.reduce((prev, next) => { return prev += next; }, 0);
}
export default sumObjectValues;
И sumObjectValues-test.js
:
const obj = [
{
"id": 0,
"item": "Tesla Model S",
"amount": 85000
},
{
"id": 1,
"item": "iPhone 6S",
"amount": 600
},
{
"id": 2,
"item": "MacBook Pro",
"amount": 1700
}
];
const identifier = "amount";
jest.unmock('../client/utils/sumObjectValues'); // unmock to use the actual implementation of `sumObjectValues`
describe('sumObjectValues', () => {
if('takes an array of objects, each with amount values, & sums the values', () => {
const sumObjectValues = require('../client/utils/sumObjectValues');
expect(sumObjectValues(obj, identifier)).toBe(87300);
});
});
Тогда у меня есть "test": "jest"
в моих сценариях package.json, но я получаю следующую ошибку:
FAIL __tests__/sumObjectValues-test.js (0s) ● Runtime Error - Error: Your test suite must contain at least one test. at onTestResult (node_modules/jest-cli/build/TestRunner.js:143:18) 1 test suite failed, 0 tests passed (0 total in 1 test suite, run time 13.17s) npm ERR! Test failed. See above for more details.
Спасибо всем :)
Примечание: в it
была допущена опечатка, но после исправления я получаю новую ошибку:
FAIL __tests__/sumObjectValues-test.js (321.763s) ● sumObjectValues › it takes an array of objects, each with amount values, & sums the values - TypeError: sumObjectValues is not a function at Object. (__tests__/sumObjectValues-test.js:27:10) 1 test failed, 0 tests passed (1 total in 1 test suite, run time 344.008s) npm ERR! Test failed. See above for more details.
export default sumObjectValues
наmodule.exports = sumObjectValues
. - person Mike Cluck   schedule 24.08.2016require
? - person Mike Cluck   schedule 25.08.2016