Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 量角器找不到角度_Javascript_Angularjs_Protractor - Fatal编程技术网

Javascript 量角器找不到角度

Javascript 量角器找不到角度,javascript,angularjs,protractor,Javascript,Angularjs,Protractor,我正在尝试为angular应用程序设置单元/e2e测试。按照量角器网站上的说明和许多其他示例,我已经设置了量角器,并且能够运行测试,除非它们涉及角度对象。 下面是我想要测试的示例html页面: <!DOCTYPE html> <html ng-app="app"> <head> <script type="text/javascript" src="libraries/angular.js"></script> <

我正在尝试为angular应用程序设置单元/e2e测试。按照量角器网站上的说明和许多其他示例,我已经设置了量角器,并且能够运行测试,除非它们涉及角度对象。 下面是我想要测试的示例html页面:

<!DOCTYPE html>
<html ng-app="app">
<head>
    <script type="text/javascript" src="libraries/angular.js"></script>
    <script type="text/javascript" src="libraries/angular-route.js"></script>
    <script type="text/javascript" src="libraries/angular-touch.js"></script>
    <script type="text/javascript" src="libraries/angular-sanitize.js"></script>
    <script type="text/javascript" src="libraries/angular-mocks.js"></script>

    .....
</head>
<body ng-controller="DefaultController">
我一运行它就得到一个异常:“ReferenceEror:angular未定义”。 如果我删除行“angular.module(“app”);”-它可以正常工作。 通过查看量角器的控制台输出,它看起来像是在我尝试访问“angular”对象后在内部调用了量角器。但据我所知,browser.get-应该在加载之前加载它吗

我使用角度1.3.4和量角器1.4.0


提前感谢。

为什么需要
angular.module(“应用程序”)零件?在量角器测试中编写的代码不会在浏览器中运行。它使用浏览器API(通过Selenium),但您无法直接访问正在测试的页面上的angular模块或其他结构


我认为您可能混淆了单元测试和E2E测试的概念。你需要
angular.module(“app”)仅用于单元测试。

我想测试控制器/服务等。如以下文章所示:。所以我需要接触到有角度的物体,你们不需要量角器。可以使用Karma runner执行单元测试。量角器用于端到端测试(即,当您不缩进以测试单独的控制器、服务等,但您的应用程序作为一个整体,通常是后端、数据库等)Ok。所以,如果我理解正确,量角器永远不会被使用,也不能访问角度库。它只适用于最终结果。如果我想运行控制器测试,等等-我必须用Karma运行它们-在那里我可以使用这些对象?是的,基本上是对的。量角器用于测试有角度的场地,但不知道其内部结构。
describe('Logon page', function ()
{
    beforeEach(function ()
    {
        browser.get('default.html');

        angular.module("app");
    });

    it('should have a title', function ()
    {
        expect(browser.getTitle()).toEqual('Logon');
    });
});