Да, существующие фреймворки довольно полезны ..
В недавнем прошлом я размещал все свои тесты на «тестовой» странице, которая была встроена в приложение, но недоступна, если не была введена физически.
Например, у меня были бы все тесты на странице, доступной по адресу chrome-extension: //asdasdasdasdad/unittests.html
У тестов был бы доступ к localStorage
и т. Д. доступ к сценариям содержимого, теоретически вы можете проверить это с помощью встроенных IFRAME на своей тестовой странице, однако это больше тестирование уровня интеграции, модульные тесты потребуют от вас абстрагироваться от реальных страниц, чтобы вы не зависели от них, аналогично с доступ к localStorage.
Если вы хотите протестировать страницы напрямую, вы можете настроить расширение для открытия новых вкладок (chrome.tab.create ({"url": "someurl"}). Для каждой из новых вкладок должен запускаться ваш сценарий содержимого и вы можете использовать свой фреймворк для проверки того, что ваш код выполняет то, что должен.
Что касается фреймворков, JsUnit или более поздний Jasmine должны работать нормально.