Consistent, automated baseline testing of AJAX/POX/POJO/XHTML
by Rick Jelliffe
Such topics as: automatic code checkers, test runners, build systems, diagramming, profilers, metrics, and so on.
|J David Eisenberg
Those interested in finding out more about Selenium should go to their web site.
First, thanks for getting me on the XML path nearly a decade ago. Your XML/SGML cookbook was intrinsic to learning, and other books in your series (like XML Web Apps) were highly influential.
As a Selenium user and ThoughtWorker, it's pleasing to note a luminary outside of the QA space touting what we believe is a great tool (it's certainly helped many of our clients with automated functional testing of web pages).
It can be used for strict testing of structure and content of any XML document - viz SOAP, XHTML, PlainOldXml (POX), but of course for this to happen, the document must be retrieved by a browser. Not the fastest way to do such a thing, but is useful for visual feedback. We also use WebUnit (HTMLUnit, HTTPUnit, JUnit) for this sort of thing.
That got me thinking of transforming the now almost defunct XMLUnit to use Schematron (you've heard of that, right? ;-]) to extend JUnit (and perhaps HTTPUnit) for XML document testing.
There's also a thought to using Schematron for Selenium assertions, on top of the basic HTML table / FIT-style assertions it comes with by default. This would give a very rich, very flexible, yet still quite simple declarative construct for specifying tests. Ruby is also wonderful if you want to craft an imperative, domain-specific testing language.
To overcome your popup blocking issues, take a crack at the new Selenium Remote Control. It obviates the need to install any Selenium stuff in your web app (it's in effect, a client-side reverse proxy) and thus you can Selenium test ANY web site. I suspect it'll remove the popup issue as the browser is retrieving all resources from "localhost". If not, we can raise a ticket as it's an important issue and AJAX pages are fully intended to be testable.
Thanks Josh...a fellow Sydneysider!