簡體   English   中英

量角器js測試無法提交角度形式

[英]Protractor js test is unable to submit angular form

我正在使用量角器測試為我的angularjs應用程序編寫測試。 該測試將獲取表單元素,並通過sendKey()輸入值,然后嘗試單擊登錄按鈕以查看是否將其重定向到正確的頁面。

  describe('Radframe registration test', function() {
  it('should register a new user', function() {
    browser.get('http://localhost:3000/accounts/register');
    element(by.id('id_first_name')).sendKeys("Name",protractor.Key.NULL);
    element(by.id('id_last_name')).sendKeys("Last name",protractor.Key.NULL);
    var job_title = element(by.id('id_job_title')).sendKeys("job title",protractor.Key.NULL);
    element(by.id('id_phone_number')).sendKeys("34894738044",protractor.Key.NULL);
    element(by.id('id_email')).sendKeys("test@test.com",protractor.Key.NULL);
    element(by.id('id_password1')).sendKeys("password",protractor.Key.NULL);
    var registerButton = element(by.buttonText('Register Account'));
    registerButton.click();
    expect(registerButton.getText()).toBe('Register Account');
  });
});

問題是我的html中有角臟檢查。 我無法單擊注冊按鈕,因為即使在通過量角器輸入值之后,該表單也是無效的(具有ng-pristine,ng-empty和ng-untouched類)。

<input class="form-control ng-pristine ng-untouched ng-empty ng-valid-email ng-invalid ng-invalid-required" id="id_email" name="email" ng-focus="emailFocused()" ng-model="email" ng-model-options="{debounce: { &quot;default&quot;: 300, &quot;blur&quot;: 0 }, updateOn: &quot;default keyup mousedown&quot; }" placeholder="Company Email *" required="required" type="email">. 

我應該采取什么其他方式才能提交表格?

您確定要單擊registerButton嗎?

var registerButton = element(by.buttonText('Register Account'));
var EC = protractor.ExpectedConditions;
browser.wait(EC.elementToBeClickable(registerButton),5000);
registerButton.click();
expect(registerButton.getText()).toBe('Register Account');

等待臟檢查完成,因為在這種情況下需要更新DOM。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM