2017-08-10 1 views
0

Existe-t-il un moyen pour Protractor d'exécuter une commande dans la console du navigateur (Outils de développement dans Chrome) avec Javascript et de lire le résultat?Protractor: Exécuter la commande de la console du navigateur

enter image description here

Ou peut-être une autre façon de faire existe quelque chose comme ça?

+1

Utilisez [ExecuteScript()] (http://www.protractortest.org/#/api?view=webdriver.WebDriver.prototype.executeScript) - « Horaires une commande pour exécuter JavaScript dans le contexte de la frame ou fenêtre actuellement sélectionnée " – Gunderson

+0

Exactement ce dont j'avais besoin' browser.driver.executeScript (function() {return api.Version;}). then (function (result) {console.log ('Version API:' + résultat);}); '. Merci Gunderson! – jurijk

Répondre

0

@Gunderson: malheureusement, ci-dessus n'aide pas dans mon prochain cas. J'étais trop heureux trop tôt. Le problème est que quand je l'utilise dans Protractor:

browser.driver.executeScript(function() { 
    return gameApi.gamelink('GAME_CODE', function(status, code, link, isAnonymousGame) { console.log(link); }); 
}).then(function(result) { 
    console.log(JSON.stringify(result)); 
}); 

Je reçois la réponse suivante:

{"always":{},"done":{},"fail":{},"pipe":{},"progress":{},"promise":{},"state":{},"then":{}} 

Quand je cours commande ci-dessus dans le navigateur directement, je reçois la réponse suivante:

(3) ["gamelink action", "GAME_CODE", ƒ, callee: ƒ, Symbol(Symbol.iterator): ƒ] (index):1076 
{state: ƒ, always: ƒ, then: ƒ, promise: ƒ, pipe: ƒ, …} 
https://url_to_the_game VM269:1 

En photo ci-joint j'ai marqué en rouge l'url que je veux obtenir car je dois ouvrir le jeu et continuer là.

enter image description here

+0

Anoyone? S'il vous plaît? – jurijk