Joseph Wilk wrote:
Create two classes (this is already what MHS_testing has done for
Selenium)
----
class RailsSeleniumStory < RailsStory
class RailsWebratStory < RailsStory
----
Create a common interface for all shared functionailty.
(I suspect Webrat represents the smallest set of functionality -
Selenium can do everything Webrat can do but not the other way around).
The different UI testing frameworks implement such interface giving
Selenium/Webrat/Other UI adapters.
You choose which adapter to use by the story class.
...
I'm not sure what direction MHS_testing or Rspec-ui are going, whether
they will merge? I'm looking at this problem now and want to start
contributing to whatever project is going to be the best fit. So I'm
interested to hear:
*Feedback/discussion about this direction
*Any better ideas of solving the problem
*Any other frameworks out there were people have started to look at this
problem.
--
Joseph Wilk
http://www.joesniff.co.uk
Hey Joseph,
Have you looked at webrat in github lately?
http://github.com/brynary/webrat/tree/master
Bryan is abstracting webrat so that different adapters can be plugged
into it.. Meaning, the same wrappers/syntax can be used to drive rails,
merb, mechanize, etc... I think a selenium or watir adapter for webrat
would be awesome. I'm not too experienced with selenium but it doesn't
strike me as being too hard to do. You make a good point in that webrat
is a small subset of what the other JS aware frameworks can do but I
think what webrat currently has would handle a lot of the use cases.
One could then perhaps create an extension of webrat's language to form
a uniform way of expressing JS/AJAX behaviour.
The mechanize adapter idea is neat too, because you could then use it to
test any website no matter what the implementation is. I know that part
of Bryan's motivation behind the mechanize spike is to eventually use
the stories to do performance testing as well.
This is a problem I'm also interested in but I haven't yet needed to use
selenium enough to make me want to do anything about it. :) I think the
selenuim adapter for webrat approach would be a great way to approach
this problem though. What do you think?
-Ben
_______________________________________________
rspec-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rspec-users