Ожидаемый .... чтобы отключить атрибут

У меня есть эта форма в файле tect.html, и я хочу проверить, отключена ли кнопка или нет:

//an ID INPUT
 <label class="form-control-label" jhiTranslate="oncosupApp.protocolo.identificador" for="field_identificador">Identificador</label>
        <input type="text" class="form-control" name="identificador" id="field_identificador"
            [(ngModel)]="protocolo.identificador" required/>


//and the button
<button id="ref_button" type="submit" [disabled]="editForm.form.invalid || isSaving" class="btn btn-primary">

Я использую методы транспортира, огурца и dom, чтобы проверить, отключена ли эта кнопка, когда данные формы недействительны, поэтому я проверяю ее атрибут как:

const { Given, When, Then } = require('cucumber');
const jsdom = require("jsdom");
const { JSDOM } = jsdom;
const chai = require('chai');
const expect  = chai.expect;
const should = chai.should();
chai.use(require('chai-dom'));

Given('I go to the project', {timeout: 90 * 1000},function(callback) {
  browser.driver.manage().window().maximize();
        browser.get('http://localhost:8080/#/').then(callback);   

  });
  
   When('I put a blank id',{timeout: 90 * 1000},  function( callback) {
        
        element(by.css("*[id='field_identificador']")).click();
        element(by.css("*[id='field_identificador']")).sendKeys('4').then(callback);
       
    });
    
    
    Then('Disabled should be true',{timeout: 90 * 1000}, function() {
  JSDOM.fromFile("src/main/webapp/app/entities/protocolo/protocolo-dialog.component.html").then(dom => {
   dom.window.document.getElementById("ref_button").hasAttribute('disabled').should.be.true;
     
    });
  });
Теперь тест всегда терпит неудачу, потому что он не находит отключенным. Но когда я использую жасмин и транспортир, хотя, как показано ниже, он отлично работает, терпит неудачу, когда он включен и проходит при отключении.

//describe.....

it('When the id is blank form is invalid so disabled should be true', function () {
        
        element(by.css("*[id='field_identificador']")).click();
      element(by.css("*[id='field_identificador']")).sendKeys('');
        
        expect(button.getAttribute('disabled')).toEqual('true');

    });
Что я пропустил в первом сражении с cucmber? Может быть, jsdom? Может быть, обратные вызовы? Может быть, есть еще один способ тестирования dom с использованием cucmber и protrcator ???

Благодаря!

javascript,html,angular,testing,dom,

0