Your data. Anywhere you go.

New Relic for iOS or Android


Download on the App Store    Android App on Google play


New Relic Insights App for iOS


Download on the App Store


Learn more

Close icon

Synthetics showing blank page and not finding any elements


#1

Hey there. I’m working on a Synthetics test for https://portfolio.adobe.com/. Every time I run the test, or run a script validation, the screenshot comes back completely blank, and I can’t select any elements on the page. I always get “Timed-out waiting for element to be located”. My suspicion is that the test isn’t waiting correctly for the page to load, but I don’t know how to fix it. Here’s my script:

var assert = require('assert');

$browser.get('https://portfolio.adobe.com/').then(function() {
  return $browser.waitForAndFindElement($driver.By.className('qa-cta-button'), 5000).then(function(element) {
    return element.getText().then(function(text) {
      return assert.equal('Get Started Free', text);
    });
  });
}); 

#2

Hi, @stdavis: Your script works fine for me. You might try increasing the timeout for waitForAndFindElement():

return $browser.waitForAndFindElement($driver.By.className('qa-cta-button'), 30000)

#3

Hi @stdavis - Have you tried increasing the timeouts for the script to ensure it has plenty of time to work first? You could then decrease the timeouts to find the threshold.


#4

Hey @stdavis Similar to Phil, your script runs perfectly for me without error - are you still seeing timeouts?

If so - what locations are you running the monitor from? I’m curious if that site is geo-blocked causing some errors for some locations.


#5

Hey! Sorry for the delay. This ended up being a monitor version issue. I was on 0.2.2, and when I copied this code into a new monitor using the latest version, everything worked. I’m not sure why the old version wasn’t working correctly, but at least now I know how to fix this going forward. Thanks for all your replies!


#6

Thanks for coming back with the solution here.

The monitor versions correlate to versions of the Chrome Browser being used, and versions of Selenium Web Driver being used.

It’s possible that the site doesn’t support browser as old as that one, and also possible that some of the methods you are using weren’t available in that old WebDriver version.

Anyway - it’s great to hear your monitors are now working :smiley: Thanks for letting us know.