2016-08-04 66 views

Antwort

4

Sie müssen möglicherweise warten, bis Sie auf der Zielseite sind. Es ist die relevanten urlIs Expected Condition zum Protractor hinzugefügt 4:

var nortonlink = $('[href*=safeweb]'); // NOTE: also simplified the selector 
nortonlink.click(); 

var EC = protractor.ExpectedConditions; 
browser.wait(EC.urlIs("https://safeweb.norton.com/"), 5000); 

Ich bin nicht sicher, ob Sie den Schrägstrich hier müssen - versuchen, mit und ohne.

1

Verwenden Sie protractor.ExpectedConditions, um zu prüfen, ob die Verknüpfung klickbar ist oder nicht. und dann klicken Sie darauf.

var EC = protractor.ExpectedConditions; 

    var nortonlink = element(by.css('[href="//safeweb.norton.com/"]')); 

    nortonlink.click().then(function(){ 
    //wait until page completely loaded 
    browser.wait(function() { 
     return browser.getCurrentUrl().then(function (url) { 
       if(url==!"old url"){  
       return true; 
       } }); 
     }, 8000, 'URL has not changed'); 

    expect(browser.getCurrentUrl()).toEqual('https://safeweb.norton.com/'); 
    }); 
+0

Von dem, was ich verstehe das OP gelungen, die Verbindung ohne Probleme klicken, aber die URL Check Erwartung fehlgeschlagen .. – alecxe

+0

@alecxe Sie könnten Recht haben. Ich denke, Element ist möglicherweise nicht im anklickbaren Status. –

+0

Könnte sein, ich würde erwarten, dass der 'click()' in diesem Fall fehlschlägt. Würde glücklich sein, sich darin zu irren. Vielen Dank. – alecxe