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

Reply via email to