如何使用Angular.js前端对Django应用程序运行我的e2e测试场景?

时间:2012-09-18 11:34:26

标签: django angularjs jasmine

我想使用基于angular-seed的前端进行端到端测试,如Angular.js文档中所述。后端是使用django编写的。当我尝试使用jstestdriver(和代理选项)时,我收到来自jetty的消息,说不允许对此URL的GET请求。

我该如何解决这个问题?还有其他方法可以在这样的设置中运行我的测试吗?

我是否正确理解它只是常见的Jasmine而且测试驱动程序或多或少只是服务器?

1 个答案:

答案 0 :(得分:5)

Karma目前是受支持的测试运行者。这是我的testacular-e2e.conf.js文件。

basePath = '../';

files = [
  ANGULAR_SCENARIO,
  ANGULAR_SCENARIO_ADAPTER,
  'test/e2e/**/*.js'
];


autoWatch = false;

browsers = ['Chrome'];

singleRun = true;

proxies = {
  '/': 'http://localhost:3000/'
};

junitReporter = {
  outputFile: 'test_out/e2e.xml',
  suite: 'e2e'
};

重要的部分是proxies。它配置testacular使用您的服务器。如果我没弄错的话,Django会在开发中运行8000端口。所以proxies看起来像这样:

proxies = {
  '/': 'http://127.0.0.1:8000/'
};

通过npm安装testacular并创建此配置文件后,您可以启动后端服务器并运行您的e2e测试:

$ testacular start config/testacular-e2e.conf.js