7

ルートリダイレクトが機能することを確認するための簡単な e2e テストがあります

runner.html

<!doctype html>
<html lang="en">
  <head>
    <title>End2end Test Runner</title>
    <script src="../client/components/angular-scenario/angular-scenario.js" ng-autotest></script>
    <script src="e2e/scenarios.js"></script>
  </head>
  <body>
  </body>
</html>

シナリオ.js

'use strict';

describe('e2e', function() {

  beforeEach(function() {
    browser().navigateTo('../../client/index.html');
  });

  it('should redirect to the main application home page with / is accessed', function() {
    browser().navigateTo('#!/');
    expect(browser().location().path()).toBe('/app');
  });
});

カルマ.conf.js

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

これが実行されると、browser().location().path() で例外が発生します。

TypeError: 'undefined' is not a function (evaluating '$document.injector()')

browser().location() を実行しても例外は発生しないため、問題を引き起こしているのは最後の .path() であると判断しました。

ただし、ブラウザー コンソールでは、期待どおり angular.scenario.Future が返されます。

例外が発生するのはなぜですか?

4

1 に答える 1