2016-04-28 4 views
0
<hs-details-item> 
     <hs-label>Location</hs-label> 
     <hs-value-block> 
      <hs> 
       <hs-text-box ng-class="{'disabled': isAmenityPosting }" class="required" input-control="{title:'Location', okCallback:setJobSite, value:jobSiteName, 
         autocomplete:{ values:getJobSiteList, reload: true }, ss:'location'}"> 
        <i class="icon-room"></i><span hs-placeholder="Select Location" class="ng-binding"></span> 
       </hs-text-box> 
      </hs> 
      <hs> 
       <!-- ngIf: isBarcodeShow() --><hs-button ng-class="{'disabled': soCreating }" class="barcode-special-btn smaller ng-scope" ng-if="isBarcodeShow()" hs-gesture="{handler:startScan, param: onBarcodeScanCompleted}"><i class="icon-br-code"></i></hs-button><!-- end ngIf: isBarcodeShow() --> 
      </hs> 
     </hs-value-block> 
    </hs-details-item>    

シナリオ:「場所」フィールドをクリックしてください... は何スニペットコード上から選択することが分度器でコマンドを使用してフィールドを「場所」を考え出すための最良の方法だろうか? Xpathを使用しないで行うことはできますか?分度器でフィールドを選択

答えて

0

複数のオプションがあります。非歓迎しますが、短くて読みやすい方法の一種は、XPath式を使用してチェックすることですlabel、前:

var locationTextBox = element(by.xpath("//hs-label[. = 'Location']/following::hs-text-box")); 
locationTextBox.click(); 
+0

@ alecxe ...ありがとうございました...それは働いていた... – Kevin

+0

@ alecxe、Xpathを使用して自動化スクリプトを作成するのに欠点はありますか? – Kevin

+1

@Kevinよく、[分度器スタイルガイド](https://github.com/angular/protractor/blob/master/docs/style-guide.md#never-use-xpath)はXPathを使用しないことを指示しますが、私の見解では、それは陳述書が強すぎるので、この場合のように適切なユースケースがあるため、推薦するべきである。 – alecxe

関連する問題