3

我正在尝试使用 angular-js 和 karma 创建 E2E 测试,但由于某种原因,测试没有进行并挂在 navigateTo() 上。

我正在使用的代码是

describe('Login', function(){
        beforeEach(function(){
            browser().navigateTo('http://localhost/blah');
            window.sleep(1);
        });

        it('should log in a user and redirect', function(){
           input('email').enter('user');
           input('password').enter('pass');
           element(':button').click();
           expect(browser().location().url()).toBe('/newBlahPage');
        });
    });

html标记是

<form action="" method="">
    <input type="test" name="email" id="email />
    <input type="password" name="pass" id="pass" />
    <button type=""submit">login</button>
</form>

我不确定是测试本身还是服务器端身份验证,或者我只是错过了我想到的东西。

4

2 回答 2

3

你必须像这样改变你的表格;

<form action="" method="" ng-submit="somefunctionname">
    <input type="test" name="email" id="email" ng-model="email" />
    <input type="password" name="pass" id="pass"  ng-model="pass"/>
    <button type=""submit">login</button>
</form>

然后如上所述编写您的测试用例。我认为这会有所帮助。

于 2013-08-17T11:35:08.953 回答
0

如果你没有“ng-model”怎么办?

于 2013-09-02T09:25:18.420 回答