views:

50

answers:

2

I have to test a web application which uses PHP, Javascript and AJAX. I want to automate the testing using automation tool. I am new at automation tool, but manual testing for the web is a big burden. I will use the tool for functional testing and hopefully, it also can help me for system testing.

I have found some of automation tools that are widely used by tester, such as Watir, Selenium, QEngine. Is there any other great candidate or maybe one of them is the best? A brief information on the automation tool will be great (such as, advantage and disadvantage).

+1  A: 

I would recommend you to use Selenium because it seems to be the most widely used web app automation testing tool. It's pretty stable, evolving and supports more browsers then any other tool. Test can be recorded from its IDE (Firefox add-on) and exported to most of the major programming languages which can be used to develop tests

Also since you are only starting, you should start with Selenium 2/WebDriver

ZloiAdun
While I agree with the choice of Selenium, I would caution against WebDriver. There's still some features left to be implemented (like alert and confirm support) and the api is still relatively unstable. While I really like the speed and native improvements in Selenium 2, be cautious about going that route just yet.
pnewhook
@Peter, I will disagree - the core WebDriver API is stable as well as the core functionality so it should satisfy most use cases. Also WebDriver's PageFactory and annotations is a perfect way to implement Page Objects pattern and is a great way to test dynamic pages that utilize AJAX as opposed to Selenium 1 in which you will have to insert sleeps to wait for page to appear
ZloiAdun
Thank you for the comments. Since my application uses AJAX, I think Selenium is a great choice to automate the test. Now I am still using the Selenium 1. Is there any significant difference between Selenium 1 and 2? I still try to explore them.
abochan
Selenium 2 is a project aimed to merge Selenium and WebDriver. Selenium 2 contains all components of Selenium 1 plus the WebDriver - an alternative way to drive a browser. Read more:http://seleniumhq.org/docs/09_webdriver.htmlhttp://code.google.com/p/selenium/w/list
ZloiAdun
+1  A: 

I will recommend TestPlan. It is far easier to write tests than with Selenium, but you can still use the Selenium backend to test in live browsers. Scripts are written in a specialized language, and can be extended in Java if need be (and usually you won't need to).

I've written extremely large test suites in TestPlan so it shouldn't have any problem. It supports all aspects of a standard web application. That is, beyond just testing the pages it has no problem sending and checking email, using FTP, making AJAX requests directly, parsing downloaded CSV or XML files, and many more nice things.

It doesn't support record-and-play, though for most testing I've done that hasn't been a problem. Usually hand-coded tests are more maintainable and flexible.

If you need any assistance just ask.

edA-qa mort-ora-y