Automated testing will shorten development and test cycles, by avoiding repetitive tasks and improve software quality.
But to get success in that choosing right automation tool is very important.
There is much functional and nonfunctional automation testing tool available in market, some are commercial and some are open source.
We will talk about two tools which are majorly used by the testers or firms.
HP QTP and Selenium
Let us check the positive and negative points of both the tool.
First will discuss about HP QTP tool
- Primary language used is VB script and can be easily learn by user.
- Object repository is great feature.
- QTP can be integrated with HP ALM, so easily manageable.
- Product Support can be available.
- Reporting can be easy if it associated with ALM.
- Less coding experience
- Supporting windows based application.
- QTP is costly compare to other commercial tools and license cost depends on volume and the type of license. If any add-ins required then extra cost for that. And requires renewal.
- Upgrade required whenever the system or software upgrade done QTP version also have to be upgraded based on specific application.
- With respect to performance execution time is higher, whereas scripting time is less.
- Hardware resource utilization High
- Only supports windows environment.
Now we will discuss about Selenium.
- Primary Selenium supports many languages Like Java, C#, ruby, and python.
- It is an open source (no license cost) and also can support integration with Test NG, Maven and Ant for build and execution.
- Supports most of the browsers Like IE, Chrome, FF, Safari etc…
- User can create their own framework based on the needs.
- Hardware utilization is less
- Very good for Web automation
- Supports multiple Environment like Linux , Solaris OS X, Windows.
- Resource or user should be good in programming and also in framework as well as in reporting.
- There will not be any direct support and user has to find solution through forums or community online.
- More coding experience required
- Windows based application cannot be tested as only support web automation.
Software Testing is required because we all do mistakes.
Software Testing is required to find out if there is any gap between the requirement specification and actual System or software application or product.
Since we work in a team and also with different region people, there may be some common mistake, or some time we ignore small things, because of other work priority, or there me be interpretation or understanding issue, which can result in software failure, hence we all need to check our own work.
Ideally, tester should be another person who has not worked on a system as developer, to check our work because another person is more likely to spot the flaws.
There are some reasonable points which tell us as why Software Testing is important and what are the areas that we should consider while testing of any product or application.
Software testing is important because of the following:
- Required to point out the defects and errors that may come during the development phases.
- Customer satisfaction as we can surely tell that the product will work as expected, in general or for specific inputs provided by customer.
- It determines the quality of product, which can build confidence in team as well as customer and stake holders.
- It ensures the business needs get fulfill by the software as expected by stakeholders.
- It ensures the application is stable and also response to each type of input.
- It also ensures that application should not result into any failures, which can be a heavy loss to customer as well as stakeholders and also expensive to correct or recover.
- Delivering good quality product to customer, requires less maintenance reliable and consistent, which build up good customer relationship as well as good reputation.
Software testing is a planned set of activities to provide stakeholders with information about the quality of the product or service under test. In other way it is the planned activity to identify the software is working as expected, based on requirement or user needs. Software evaluation involve some of the basic points mentioned below :
- Meets the product or customer requirement or satisfy the stakeholder needs.
- Should give proper response to all type of Inputs, it may be correct or wrong input.
- Function within applicable or acceptable time.
- Should be usable by the user.
- Can be implemented on intended environment.
Software Testing can be started once the product or software is in executable form. But the preparation for testing the software can be start much before the software is ready, example: understanding requirement, test planning, strategy, test design, test case writing, reporting criteria and mechanism, choosing automation tool if any required to do regression, retesting and so on.. Software Testing is a phase in software development life cycle which comes after coding and before implementation of software. so it is very important to a software tester to understand the software requirement thoroughly and do good testing.
Software testing is a process to find system works as expected.