2016-04-04 8 views
2

Ich möchte den Wert 'contractId' aus der ersten Zeile in der Tabelle speichern. Wenn ich also einen Vertrag hinzufüge, wird dieser Wert plus 1 für eine eindeutige ID verwendet. Wenn ich versuche, den folgenden Winkelmessertest zu verwenden, wird "[object Object] 1" zurückgegeben. HierWie wird der Wert aus einer Tabellenzelle im Winkelmesser gespeichert?

ist die Tabelle:

<tbody> 
      <tr data-ng-repeat="contract in vm.contract"> 
      <td data-ng-bind-html="contract.internalId"></td> 
      <td data-ng-bind-html="contract.contractId"></td> 
      <td data-ng-bind-html="contract.contractDescription"></td> 
</tbody> 

Mein aktueller Winkelmesser Test:

it('create contract', function(){ 
    var id = element.all(by.repeater('contract in contracts')).get(0).element(by.binding("contract.contractId")).getText(); 
    id = id + 1; 
    element(by.cssContainingText('.submit-button', 'Add Contract')).click(); 
    element(by.model('vm.newContract.contractId')).sendKeys(id); 
}); 

Antwort

2

Protractor ist asynchron. Das Ergebnis von getText() ist ein Versprechen, keine Zeichenfolge.

it('create contract', function(){ 
    var id = element.all(by.repeater('contract in contracts')).get(0).element(by.binding("contract.contractId")).getText(); 
    id.then(function(text) { 
     text = text + 1; 
     element(by.cssContainingText('.submit-button', 'Add Contract')).click(); 
     element(by.model('vm.newContract.contractId')).sendKeys(text); 
    }); 
}); 
Verwandte Themen