【发布时间】:2013-06-28 16:30:40
【问题描述】:
我找到了很棒的单元/e2e 测试工具karma。 我用angular 编写了简单的 chrome 扩展。我想为它编写自动化测试,但不仅是单元测试,还有端到端测试。 我写了这样的东西(将打开我的角度扩展选项页面):
it('Go to options page', function() {
browser().navigateTo('chrome-extension://aopgehikihpnclbfeohobanjecpiefho/html/application.html#/options');
});
我为 karma-chrome-launcher 删除了“--user-data-dir”和“--disable-default-apps”,(因为我希望我的扩展程序在“业力测试”期间保持在 chrome 中)
但我收到下一条错误消息“沙盒错误:无法访问应用程序文档。”:
browser navigate to 'chrome-extension://aopgehikihpnclbfeohobanjecpiefho/html/application.html#/options'
http://localhost:9876/base/tests/e2e/scenario.js?1372429335000:9:5:
Sandbox Error: Application document not accessible.
Chrome 27.0 (Windows): Executed 2 of 2 (2 FAILED) (0.254 secs / 0.139 secs)
Chrome 选项 --no-sandbox 很久以前就弃用了。
我确定我没看错,选项页面打开正常,但来自 chrome “omnibox”。
chrome-extension://aopgehikihpnclbfeohobanjecpiefho/html/application.html#/options
沙盒错误意味着 无法通过 karma 对 google chrome 扩展进行端到端测试? 我可以将 chrome 设置为特殊的“非安全”模式来进行测试吗?
谢谢,
【问题讨论】:
-
github.com/salsita/chrome-angular-skeleton 链接到角度扩展,似乎没有 google chrome 扩展的业力单元测试和端到端测试,所以我必须为它编写自己的单元测试
-
application.html 是否列在扩展程序清单的 web-accessible-resources 部分中?
-
是的,我在“web_accessible_resources”中有 html/application.html:[“js/*”、“html/*”、“css/*”、“images/*”]、
标签: angularjs google-chrome-extension integration-testing karma-runner