Open Source Software Testing Tools licenses give users the freedom to run the program for any purpose, study and modify the program, and to redistribute copies of either the original or modified program without having to pay the royalties to the author. It is also important to understand that free does not necessarily refer to price but refers to the liberty. Free in open source refers to the freedom to realize, discourse, code fixture and alter the technological devices/software users that own. Thus, allowing users to have fundamental control and flexibility on the software, since they can modify, customize and maintain their tool to their liking. This is probably one of the most important reasons to understand that open source works in almost every sphere of technology trends.
In present times, most of the leading software development & testing organizations having independent QA testing services adopt open source tools against commercial ones. People wonder what could be the probable reasons. There are couple of factors involved in choosing the right candidate for the test automation which might be or might not be relevant for other software tools.
1. Programming Language
Programming language is one of the major influencing factors for maintaining and refactoring the automation suite. Historically, software testing tool vendors have always given their own specific language which was good only for single technology and platforms. Tools like Selenium support almost every major programming language, and because of their open nature, the support for other language will get developed on the demands by the open source community. Even the commercial tools like Rational Functional Tester and Test Complete have started supporting major languages but still Selenium wins the game in web based application test tools.
2. Software Testing Tool Support
There is always an argument that support from the commercial tool vendors are better as they are getting paid for it. Even though the tool vendors guarantee that support will be available and their queries will be resolved, but still there is a large dissatisfaction in terms of getting the queries resolved. The open source community on the other side is more responsive in solving the queries as it is bunch of community from all over the world. Hence the chances of right support are higher than the dedicated vendor. The major difference with commercial and open source support is that tool vendor support is demanded whereas from open source community, the support is requested. The demand comes when the vendor is paid for specific services and request is when we are in dire need.
3. Short Evaluation Period
There are often wrong decisions being made about the tool during the evaluation period which is normally for short duration given by the vendors, normally 15 days to 30 days evaluation period. Open source on other hand provides us enough time to evaluate and ascertain, and then make a decision with good knowledge on limitation, potentiality and its pertinency in the context of the application under test. However, there are growing communities in the world who have provided the extensive evaluation report on the web on open source test tools against commercial tools which can be downloaded from the web.
4. Selling is driven by Sales:
Tools are often being sold by sales to managers or seniors and not to actual users who would be using the tool. It has been observed that tools are sold by catchy words like record/playback, quick automation, processes that it supports and the technical limitations are hidden unless the user has any trouble during usage. The approach results in redundancy of the test scripts being generated by the commercial tools.
The principal motive of commercial tool vendors is to sell more products and make money. They increase their chances of sales by combining more features, providing support for many languages / platforms etc that ends up in a very bulky product, which is uncomfortable in operation and reduces the speed at which tools can be adopted. Open source on the other hand; try to solve one problem at a time. The motive here is not to sell more products, but to solve a particular enigma and that takes them much closer to users than vendors.
The most popular open source software testing tools are Selenium, WET, WATIR, Jmeter, OpenSTA, Canoo Web Test, Bromine, Redmine, Testopia, Bugzilla and the number is growing each day with new set of tools, simplifying and providing features that are competent enough against commercial tools.