Недавно унаследовали много унаследованного кода (код jquery с js без ES6) без добавления тестов.
Что было решено, так это добавить тест в каждый вновь созданный метод / функцию, изменения пользовательского интерфейса и т. Д., ИспользуяJEST.
В связи с этим возникает вопрос:
- Можно ли проверить файлы * .js, не являющиеся модулями? я имею в виду файл, содержащий код, работающий на DOM, внедренный в HEAD через
<script src="../path_to_script.js></script>
, и он не связан. - и если «да» на вопрос 1, каким образом я должен назвать код тестирования? я могу сделать это с помощью require ()?
До сих пор были созданы тесты, содержащие код внутри тестов, то есть:
// elemenytest.spec.js
jest.dontMock('jquery').dontMock('fs');
describe('Test', ()=>{
it('should check jquery element', ()=>{
let str = "<li class='_class'>I am an element</li>";
expect( $(str).hasClass('_class')).toBeTruthy();
});
});
, однако это не самый эффективный способ, и хотелось быизбегайте этого и работайте с «настоящими» файлами.