Hey guys!
I am facing one issue when I try to run E2E tests. I am using Protractor (5.1.2) for E2E tests.
So everything works fine when I try to search for elements on the rootPage. My tests look like this:
game.navigateToRoot();game.startGame();game.playTheGame();
Navigation to root works fine, I can normally find the START BUTTON and click on it, which leads me to the GameComponent (I actually change the root like this.nav.setRoot(GameComponent)).
When the game panel is shown, I can not do any HTML selector query, not even (browser.title), because neither one Promise callback is executed. I tried to wait the browser with:
constuntil=rotractor.ExpectedConditions;browser.wait(until.presenceOf(game.getFinalResultWrapper()),5000,'Element taking too long to appear in the DOM');
Here is my game page object where I make HTML queries:
navigateToRoot(){returnbrowser.get('');}startGame(){conststartGameButton=this.getStartGameButton();this.getStartGameButton().click();// the NavController's root changes}getStartGameButton(){return$('#start-game');}getFinalResultWrapper(){return$('.level-complete-wrapper');}playTheGame(){// nothing works from now onconstgoalWrapper=$('#goal-wrapper');constuntil=protractor.ExpectedConditions;browser.wait(until.presenceOf(goalWrapper),5000,'Element taking too long to appear in the DOM');browser.getTitle().then((title)=>{console.log('title = ',title);});$('#goal-wrapper').getSize().then((size)=>{console.log(size);});}
Hey guys!
I am facing one issue when I try to run E2E tests. I am using Protractor (5.1.2) for E2E tests.
So everything works fine when I try to search for elements on the rootPage. My tests look like this:
Navigation to root works fine, I can normally find the START BUTTON and click on it, which leads me to the GameComponent (I actually change the root like this.nav.setRoot(GameComponent)).
When the game panel is shown, I can not do any HTML selector query, not even (browser.title), because neither one Promise callback is executed. I tried to wait the browser with:
Here is my game page object where I make HTML queries: