I have been using Selenium a lot lately (testing ExtJs applications), and in many ways this is great, there are three things that cause me a lot of grief:
You cannot directly click items other than buttons. This made me write a bunch of robot code to move the mouse. It works, but a little fragile, plus, if you touch the mouse during the test, you are screwed. I tried the Selenium forums to find out if there is a better way and haven’t gone anywhere. I think (but not sure) that this is a fundamental limitation of the Selenium JS injection technique.
Inability in many cases to control what the attribute 'id' gets in . This happens inside ExtJs, and some elements allow you to set it, and some do not, and some only with an attribute in which you do not expect it. In some cases, you will have to use XPath. Using XPath with ExtJs is pretty awful, because ExtJs creates massive levels of nested DIVs. Sometimes you can also use CSS locators (which are also not amenable to control in ExtJs). (By the way, this is obviously not Selene's problem as such).
The time it takes Selenium to run FF is too long ... longer than a typical human FF run, about 2 seconds per test, which leads to tests that take too long in the last few minutes.
I looked briefly at Watij, BadBoy, and a couple of other web applications for functional testing, but none of them looked almost as good as Selenium. (The way Selenium tests can be written in Java, and running through jUnit is really, really nice). There are also several commercial alternatives, but they exceed my budget and there is no certainty that they will work better anyway.
Any thoughts or suggestions appreciated.
source
share