Протестируйте chrome.extension.getURL () и другие функции chrome с помощью Jasmine - PullRequest
0 голосов
/ 30 ноября 2018

Я следовал этому руководству для тестирования ванильного javascript с помощью jasmine: https://dev.to/aurelkurtula/unit-testing-with-vanilla-javascript-the-very-basics-7jm

Однако я получил точку, в которой функция, которую я хочу протестировать, назначает src элементу img.

setImage(){
     const img = document.createElement('img');
     img.src = chrome.extension.getURL('images/icon.png');

     return img;
}

И для теста с Жасмином я сделал:

it('should check image creation', () => {
     const img = document.createElement('img');
     img.src = '../images/icon.png';

     expect(setImage()).toEqual(img)
})

Я получил эту ошибку после запуска теста:

TypeError: Cannot read property 'getURL' of undefined

, ссылаясь наchrome.extension.

Кто-нибудь знает, как я могу это проверить?

1 Ответ

0 голосов
/ 30 ноября 2018

Это означает, что контекст, в котором выполняются тесты, находится вне контекста extension.

Способ, которым я выполняю модульное тестирование, заключается в создании веб-страницы tests.html в расширении, а для целей разработкиконтекстное меню Run Tests, которое запускает:

extension://1234123412341234/tests.html

Как всегда, убедитесь, что ваше расширение спроектировано таким образом, что контекстные скрипты / фоновые страницы / всплывающие окна абстрагированы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...