Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Suggest a test automation framework for my scenario

I am in the process of evaluating few test automation frameworks and would appreciate some input. We have a large credit processing business app and it has three endpoints: web ui, soap and basic http/post. My requirement is as below.

Our QA is very much used to data-driven testing (all the input data comes from excel and so is expected result for assertions). Basically each row in the excel sheet contains both input data and corresponding expected outcome. We want our QA to just edit the excel sheets. Our development team will be responsible for providing necessary test libraries/fixtures. Given the above scenario, I would want to use 1 single automation framework that can read these excel sheets and test all the endpoints of my application i.e. web ui, soap and http/post. Please let me know which test automation framework(s) suit my needs. Appreciate some pointers and tutorials to get me started.

like image 638
Aravind Yarram Avatar asked Apr 26 '11 01:04

Aravind Yarram


People also ask

What scenario is suitable for automation?

Good test cases for automation are ones that are run frequently and require large amounts of data to perform the same action. You can get the most benefit out of your automated testing efforts by automating: Repetitive tests that run for multiple builds. Tests that tend to cause human error.

What makes a good test automation framework?

A great framework should support users' needs as simply as possible. Shahin and Walaa both emphasize that test automation frameworks should function like plug-and-play devices. Members of a quality assurance (QA) team should be able to use a framework even if they don't necessarily understand how it works.


1 Answers

Robotframework makes it possible to use test data that comes from external files. I haven't tried with excel sheets but I've done it with CSV formatted data as well as JSON. At worst you might have to export your excel data into a python-friendly format, but that can be done transparently to the people maintaining the spreadsheet.

In short, you can create a keyword in python (or any JVM-based language if you use jython) that reads in your spreadsheet and converts it to data usble by test cases.

Though, if absolutely all your tests are driven from this data file you don't need a framework. Just write a short script in any language that iterates over each row and calls a function that does the equivalent of curl or wget. Frameworks are useful if you need a way to represent your test scenarios but you already have that.

That being said, though, the advantage to using robot -- even if you only have one test that say "validate using each row of the spreadsheet" -- is that you get the nice reporti g that robot has, and can integrate it with jenkins/hudson pretty easily.

like image 134
Bryan Oakley Avatar answered Oct 18 '22 05:10

Bryan Oakley