Tsung is a distributed load testing tool. It is protocol-independent and can currently be used to stress HTTP, WebDAV, PostgreSQL, MySQL, LDAP, AMQP, and XMPP/Jabber servers. It simulates user behavior using an XML description file, reports many measurements in real time (statistics can be customized with transactions, and graphics generated using gnuplot). For HTTP, it supports 1.0 and 1.1, has a proxy mode to record sessions, supports GET, POST, PUT, and DELETE methods, cookies, and basic/digest authentication. It also has support for SSL, WebSocket, and BOSH.
P6Spy is an open source framework for applications to intercept and log database statements. The P6Spy distribution includes P6Log, which intercepts and logs the database statements of any application that uses JDBC. This application is particularly useful for developers to monitor the SQL statements produced by EJB servers, enabling the developer to write code that achieves maximum efficiency on the server. P6Spy is designed to be installed in minutes and requires no code changes.
CaptureMock provides capture-replay mocking for Python, on the command line and with client-server communication. CaptureMock's approach is a so-called capture-replay approach. This means that when you 'record' your mock, CaptureMock will observe the interaction between your code and the subsystem you are mocking out, and record it in a text file in its own format. When you then run your test in 'replay mode', CaptureMock can play the role of the subsystem in question, and the real subsystem does not need to even be installed. You can then choose, each time you run your tests, whether you wish to have the real subsystems present and verify/recreate the captured mocks, or to rely on the mocks captured by a previous run. If you are running in 'replay mode' and CaptureMock does not receive the same calls as previously, it will fail the test, and suggest that you may want to recreate the mocks in record mode.
Jailer is a database subsetting and browsing tool. It is a tool for data exporting, schema browsing, and rendering. It exports consistent, referentially intact row-sets from relational databases. It removes obsolete data without violating integrity. It is DBMS agnostic (by using JDBC), platform independent, and generates DbUnit datasets, hierarchically structured XML, and topologically sorted SQL-DML.
Bugzero is a Web-based change management and issue tracking system used in a distributed team environment to track software bugs, hardware defects, test cases, or any other issues. It can also be used equally well as a helpdesk customer support, trouble ticketing, or email management system to collect and manage customer feedbacks, incidents, requests, and issues. It is easy to use, but still flexible and adaptive, and can be configured to fit to your organization's unique business process and workflow.
gjrand is a programmer's library for pseudo-random numbers. It includes random number generator testing code and is intended for simulation, games, and "Monte-Carlo" algorithms. It produces pseudo-random numbers of the types: uniform integers, uniform reals, normally distributed reals, binomial, Poisson, integer permutation, chi-squared distribution, "Student" T distribution, and spherical distribution.
StoryText (formerly PyUseCase) is an unconventional GUI testing tool written in Python. It currently has mature support for PyGTK, beta status support for Java Swing, SWT/Eclipse RCP, and Tkinter, and very basic support for wxPython. Instead of recording GUI mechanics directly, it asks the user for descriptive names and hence builds up a "domain language" along with a "UI map file" that translates it into the current GUI layout. Instead of an "assertion" mechanism, it auto-generates a log of the GUI appearance and changes to it, so as to use that as a baseline for text-based testing, using e.g. TextTest. Instead of requiring the tester to add "wait" statements by hand, it includes support for instrumenting code so that "waits" can be recorded.
DOMjudge is an automated judgement system to run programming contests. It provides a mechanism to submit problem solutions and interfaces for teams, the jury, and the general public. It is lightweight, and depends on standard software to do its task. It has a Web interface for portability and simplicity. It is scalable, so distributed judging is easy. There is a modular system for plugging in languages and compilers. It features rejudging, clarifications, and detailed submission/judging info.