Testing Dynamic Content
Usually the pages under test have dynamic content. For example we are testing news page and assert that first news title is “Puppetry 3 is out”. But as soon as anybody adds a new story our tests are to fail. What we can do is to use
page.assignVarmethod to extract actual content (e.g. news title) from the page and make assertions on it. Consider the following example:
News page has search filtering by tags. If one click on a tag the news listing gets filtered for the stories associated with the tag. So we create a variable
VAR_ARTICLE1_TITLE, which takes-in HTML of
ARTICLE1_TITLEtarget that corresponds to the element representing title of the first story.
Extracting actual news title from the page
We send click on a tag, waiting until the request for listing update complete and assert that the first story title (
ARTICLE1_TITLE) changed, meaning the news list updated.
Testing dynamic content
Similarly you can make your test case waiting until a particular image fully loaded. So you extract image URL from
srcattribute and wait for response including that URL.
Waiting for image to load
If the endpoint has redirections, the response will have URL different from one set with src attribute and therefore the approach won’t work.