2015-12-01 2 views
5

Ich mag einen Schlüssel für die md-Autovervollständigung senden, aber ich bin nicht in der Lage Schlüssel in dem Textfeld zu schicken, findet folgenden CodeProtractor Testfälle von bis md-Autovervollständigung in Angular Material

HTML Senden-Taste:

<md-autocomplete md-selected-item="selectedItem" md-search-text="searchText" md-items="item in getMatches(searchText)" md-item-text="item.display"> 
     <span id="xyz" md-highlight-text="searchText">{{item.display}}</span> 
    </md-autocomplete> 

Protractor Code:

it('checking my test case', function() { 
    browser.get('http://localhost:8080/#/home'); 

    var inputSearchTextBox = element(by.id("xyz")); 
    inputSearchTextBox.sendKeys('Boston , us , 02120'); 
    }); 

ich unten Störung erhalte:

Test checking my test case 
    Message: 
    NoSuchElementError: No element found using locator: By.id("xyz") 
    Stacktrace: 
    NoSuchElementError: No element found using locator: By.id("xyz") 

Angular-Material-Link:

ms-AutoComplete Link

Gibt es eine Möglichkeit, Schlüssel zu md-Autocomplete-Tag Textfeld senden können

+0

Auf der [md-Autocomplete-Demo-Seite] (https://material.angularjs.org/latest/ Demo/Autocomplete), kann ich erfolgreich Schlüssel an die Autovervollständigen-Eingabe senden: 'Element (by.css (" md-Autocomplete-Eingabe # Eingabe-15 ")). sendKeys (" California "); .. – alecxe

+0

Was ist Eingabe? Eingang-15? – user2936008

+0

Es ist die zugrunde liegende Eingabe, die Sie innerhalb der 'md-Autocomplete' finden können. – alecxe

Antwort

3

Sie können mit md eine id Ihre md-input-Container hinzufügen -input-id Attribut in Ihrem HTML. Zum Beispiel:

<md-autocomplete md-input-id="xyz" md-selected-item="selectedItem" md-search-text="searchText" md-items="item in getMatches(searchText)" md-item-text="item.display"> 
     <span md-highlight-text="searchText">{{item.display}}</span> 
</md-autocomplete> 

Danach können Sie darauf zugreifen und die Verwendung mit:

var myElt = element(by.css("md-autocomplete input#xyz")); 
myElt.clear(); 
myElt.sendKeys("blabla");