2015-01-28 4 views
1

У меня есть блок кода, который я пытаюсь подтвердить значение «name», но он возвращает чрезвычайно неожиданное значение, и я надеюсь, что кто-то может указать мне, где я ошибся.Отказчик-переводчик, возвращающий неожиданное значение

HTML, который я ищу над ниже:

<div class="col" ng-repeat="bank in firstBanks"> 
     <div style="font-size: 2em; "> 
      <label class="bank_radio"> 
       <input type="radio" ng-model="bankConnection.bank" ng-value="bank" class="ng-pristine ng-valid" name="00D" value="[object Object]"> 
       <img ng-src="img/banks/bofa.png" src="img/banks/bofa.png"> 
      </label> 
     </div> 

</div> 

Я пытаюсь захватить значение, найденное в имя = «00D», поэтому у меня есть блок кода ниже как ожидают(), чтобы сделать уверен, что я хватаю правый элемент, прежде чем перейти к следующим шагам.

expect(element.all(by.repeater('bank in firstBanks')).get(0).element(by.css('[ng-value="bank"]')).getAttribute('name')).toEqual('00D'); 

По какой-то причине он постоянно возвращался «011» с ошибкой:

Message: 
Expected '011' to equal '00D'. 

Это очень запутанным для меня, как у меня нет нигде на моей странице с текстом «011» на всех. Любая помощь будет принята с благодарностью, я новичок в Protractor и все еще получаю дескриптор синтаксиса.

EDIT:

Обновленный мой сниппет быть упрощена за "alecxe" ответ. Ошибка, возвращаемая сейчас, следующая: «[011», «013», «015», «019», «01B») равна «00D». Кто-нибудь знает, откуда генерируются эти ценности? Потому что у меня нет ни одной из них на моей странице.

Репитер, который у меня есть, имеет 5 экземпляров и соответствует числу, возвращаемому в этом сообщении об ошибке, но я чувствую, что это просто случайное задание.

ответ

2

Вы можете упростить тестирование с помощью by.model():

expect(element(by.model('bankConnection.bank')).getAttribute('name')).toEqual('00D'); 

или:

expect(element.all(by.model('bankConnection.bank')).get(0).getAttribute('name')).toEqual('00D'); 
+0

Спасибо за помощь. Я изменил то, что мне пришлось упростить, используя вторую строку, которую вы опубликовали. Теперь я получаю сообщение об ошибке возврата: Ожидаемое ['011', '013', '015', '019', '01B'] равно '00D'. Я понятия не имею, где и как генерируются эти цифры, есть ли у вас подсказка? – parchambeau

+0

Он, похоже, не может правильно распознать атрибут «имя». – parchambeau

+0

@parchambeau Хорошо, это выглядит как список шестнадцатеричных чисел для меня :) Вы действительно уверены, что есть элемент с 'name =" 00D "? – alecxe