2016-11-26 83 views
1

由於某種原因,我不能點擊複選框與by.repeater。沒有錯誤。查看瀏覽器時,複選框不會被檢查。有任何想法嗎?如果可能,我想留在by.repeater無法點擊複選框與元素從by.repeater

this.modelChoices = function(rowNumber) { 
    return element.all(by.repeater('model in vehicleCheckboxes.models')); 
    } 

    checkboxes.modelChoices().get(0).click(); 

回答

1

給出:

<div> 
    <div class="input-group" ng-repeat="item in vm.dataFiles | filter:vm.query"> 
     <span class="input-group-addon"> 
      <input type="checkbox" ng-model="item.isChecked"> 
     </span> 
     <label class="form-control">{{item.name}}</label> 
    </div> 
</div> 

這是我的E2E的測試,可以幫助你在某種程度上部分。 請注意,我的複選框綁定到「item.isChecked」

it("should disable the create button when there are no checked items in the vm.dataFiles", function() { 
    var dataFiles = element.all(by.repeater("item in vm.dataFiles")); 
    var firstCheckbox = dataFiles.get(0).element(by.model("item.isChecked")); 
    var btnCreate = element(by.id("btnCreate")); 

    expect(btnCreate.isEnabled()).not.toBeTruthy(); 
    firstCheckbox.click(); 
    expect(btnCreate.isEnabled()).toBeTruthy(); 
    firstCheckbox.click(); 
    expect(btnCreate.isEnabled()).not.toBeTruthy(); 
});