Used this technique myself and I can recommend it, Also Best practices are using only on specific areas of the web page, since this kind of testing is fragile and change prone.
Might be your only option when testing non DOM parts of a webpage (such as canvas based) from the outside (e.g selenium or casper.js for example)