views:

250

answers:

5

There are so many types of open source testing tools: for performance, functionality, and security testing.

My question is, which open source tool (for both web-based and client/server projects) is:

  1. Largely used for performance, functionality and security testing

  2. Easy to understand

  3. Easy to use

  4. Acceptable/accepted in interviews

  5. Easy to install and configure.

+2  A: 

DejaGNU/Expect/Makefile combos can do all of the above and call http-perf tools, profiling tools, input fuzzing tools and all sorts.

Aiden Bell
+1  A: 

Take a look at opensourcetesting.com for lists and discussions on a wide range of open source test tools.

gareth_bowles
+3  A: 

I wrote a blog post on Open Source Testing tools through all the different stages at blog.theautomatedtester.co.uk/2009/01/testing-through-credit-crunch-part-4.html . I would also have a look at openqa.org . There are some really good projects there that may be useful.

AutomatedTester
+1  A: 

try; http://jakarta.apache.org/jmeter/ we use it for performance testing of our web based application, and work very well. It is also very extensible and adaptable.

From their site;

What can I do with it?

Apache JMeter may be used to test performance both on static and dynamic resources (files, Servlets, Perl scripts, Java Objects, Data Bases and Queries, FTP Servers and more). It can be used to simulate a heavy load on a server, network or object to test its strength or to analyze overall performance under different load types. You can use it to make a graphical analysis of performance or to test your server/script/object behavior under heavy concurrent load.

What does it do?

Apache JMeter features include:

  • Can load and performance test many different server types:
    • Web - HTTP, HTTPS
    • SOAP
    • Database via JDBC
    • LDAP
    • JMS
    • Mail - POP3(S) and IMAP(S)
  • Complete portability and 100% Java purity .
  • Full multithreading framework allows concurrent sampling by many threads and simultaneous sampling of different functions by seperate thread groups.
  • Careful GUI design allows faster operation and more precise timings.
  • Caching and offline analysis/replaying of test results.
  • Highly Extensible:
    • Pluggable Samplers allow unlimited testing capabilities.
    • Several load statistics may be choosen with pluggable timers .
    • Data analysis and visualization plugins allow great extendibility as well as personalization.
    • Functions can be used to provide dynamic input to a test or provide data manipulation.
    • Scriptable Samplers (BeanShell is fully supported; and there is a sampler which supports BSF-compatible languages)
n002213f
A: 

I would say Selenium. It tests your web applications directly from a browser. It is a great way to make sure that your javascript works everywhere. It has great tools and neat interfaces in several languages.

You can use it only for webapps, though.

Stefan Kanev