Dear members of the WebTest-Mailing List,
as a part of our computer science curriculum, our students must
complete a software project lasting about 4 months. The research
assistants of the Software Engineering group all make up project ideas
and try to simulate real customers -- i.e., the students come to us
and do requirements elicitation in the limited time a customer has,
but at the same time get a customer that really wants the product he
describes.
The tool I chose for my project will be developed in Java and, as far
as I can see, can be made freely available (i.e., if the project is
successful and if the students don't mind).
As part of this simulation, I as a customer decided that I want a tool
to make the creation of WebTests easier. I'm especially interested in
finding nice XPath paths. E.g., I want to point at a menu item and,
instead of a path like "/html/body/div[2]/ul[1]/li[5]/a[1]", the tool
gives me a path more like "//[EMAIL PROTECTED]'menu']//[EMAIL PROTECTED]'Contact']".
The obvious problem of course is finding out what actually makes a
"nice" XPath path. I have some ideas about that already, e.g. paths
that are short, use IDs and classes, avoid using index numbers, etc.
While these are somewhat technical requirements, I can also see higher
level requirements like "a path is nice if it's unlikely to change, so
my tests don't break when I change details irrelevant to the test".
The former kind of requirements of course should follow from the
latter kind, as without a practical goal, the technical requirements
would be meaningless.
As the members of this list probably have much more experience with
WebTest and the finding of good XPath paths in general, I now turn to
you for your input. What do you think does make good XPath paths? Is
it only the aforementioned stability? Is it also readability? What
else is it for you? Also, how do you believe might these high-level
requirements translate into technical requirements? How would you
describe the "niceness" of an XPath path to a developer who wants to
develop a tool as I described?
Please note that I considered having this developed as part of the
WebTest Firefox Extension that was developed by Marc Guillemot. Since
that one is written in XUL and JavaScript though, I decided it would
be somewhat unfair to the students on my project and chose the Java
route.
I'd be happy to hear from you with your thoughts on this.
Thanks in advance
Leif Singer
_______________________________________________
WebTest mailing list
[email protected]
http://lists.canoo.com/mailman/listinfo/webtest