我正在构建一个webapp,在服务器上使用java,前端使用angular。我正在尝试使用testacular设置e2e测试。测试失败是因为我认为是跨站点脚本问题。由于我使用java构建我的后端,我有一个运行托管我的Web应用程序的tomcat服务器。如果我在浏览器中导航到http://localhost:8087/angular
,则会加载页面。 (端口8087用于我的tomcat 7安装,因为我的计算机上有tomcat 6和7)。
当我运行testacular start 'path/to/config/file
时,我收到此错误:
http://localhost:9876/adapter/lib/angular-scenario.js?1360780804000:25281:
Error: Permission denied to access property 'document'
这是我的配置文件:
basePath = '../../';
files = [
ANGULAR_SCENARIO,
ANGULAR_SCENARIO_ADAPTER,
'test/js/tests/e2e/scenarios.js'
];
autoWatch = false;
browsers = ['firefox'];
singleRun = true;
proxies = {
'/': 'http://localhost:8087/angular'
};
junitReporter = {
outputFile: 'test_out/e2e.xml',
suite: 'e2e'
};
这是我的测试文件:
describe("E2E Test", function() {
it("should load the document and be able to read from it", function() {
browser().navigateTo("/");
expect(element("body", "The body element").count()).toBe(1);
});
});
这有什么办法吗? 使用: 节点v0.8.20 试验0.5.10
答案 0 :(得分:0)
首先,我建议您升级Karma
您共享的配置应与this here example中的配置一样好用。它不是由于您使用的是旧版本的版本,或者是您的应用程序本身的问题而引起的。
当我使用Nginx从端口80提供所有东西时,我已经运行了旧版本的testacular / angular,但如果我是你,我会先升级。