Saturday, September 8, 2007

Notes on Testing

Acceptance Testing
Testing the system with the intent of confirming readiness of the product and customer acceptance. Acceptance testing, which is a black box testing, will give the client the opportunity to verify the system functionality and usability prior to the system being moved to production. The acceptance test will be the responsibility of the client; however, it will be conducted with full support from the project team. The Test Team will work with the client to develop the acceptance criteria.


Ad Hoc Testing
Testing without a formal test plan or outside of a test plan. With some projects this type of testing is carried out as an adjunct to formal testing. If carried out by a skilled tester, it can often find problems that are not caught in regular testing. Sometimes, if testing occurs very late in the development cycle, this will be the only kind of testing that can be performed. Sometimes ad hoc testing is referred to as exploratory testing.


Alpha Testing
Testing after code is mostly complete or contains most of the functionality and prior to users being involved. Sometimes a select group of users are involved. More often this testing will be performed in-house or by an outside testing firm in close cooperation with the software engineering department.


Automated Testing
Software testing that utilizes a variety of tools to automate the testing process and when the importance of having a person manually testing is diminished. Automated testing still requires a skilled quality assurance professional with knowledge of the automation tool and the software being tested to set up the tests.


Beta Testing
Testing after the product is code complete. Betas are often widely distributed or even distributed to the public at large in hopes that they will buy the final product when it is released.



Black Box Testing
Testing software without any knowledge of the inner workings, structure or language of the module being tested. Black box tests, as most other kinds of tests, must be written from a definitive source document, such as a specification or requirements document.


Compatibility Testing
Testing used to determine whether other system software components such as browsers, utilities, and competing software will conflict with the software being tested.


Configuration Testing
Testing to determine how well the product works with a broad range of hardware/peripheral equipment configurations as well as on different operating systems and software.



End-to-End Testing
Similar to system testing, the 'macro' end of the test scale involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate.


Functional Testing

Testing two or more modules together with the intent of finding defects, demonstrating that defects are not present, verifying that the module performs its intended functions as stated in the specification and establishing confidence that a program does what it is supposed to do.



Independent Verification and Validation (IV&V)
The process of exercising software with the intent of ensuring that the software system meets its requirements and user expectations and doesn't fail in an unacceptable manner. The individual or group doing this work is not part of the group or organization that developed the software. A term often applied to government work or where the government regulates the products, as in medical devices.


Installation Testing
Testing with the intent of determining if the product will install on a variety of platforms and how easily it installs. Testing full, partial, or upgrade install/uninstall processes. The installation test for a release will be conducted with the objective of demonstrating production readiness. This test is conducted after the application has been migrated to the client's site. It will encompass the inventory of configuration items (performed by the application's System Administration) and evaluation of data readiness, as well as dynamic tests focused on basic system functionality. When necessary, a sanity test will be performed following the installation testing.


Integration Testing
Testing two or more modules or functions together with the intent of finding interface defects between the modules or functions. Testing completed at as a part of unit or functional testing, and sometimes, becomes its own standalone test phase. On a larger level, integration testing can involve a putting together of groups of modules and functions with the goal of completing and verifying that the system meets the system requirements. (see system testing)


Load Testing
Testing with the intent of determining how well the product handles competition for system resources. The competition may come in the form of network traffic, CPU utilization or memory allocation.



Parallel/Audit Testing
Testing where the user reconciles the output of the new system to the output of the current system to verify the new system performs the operations correctly.



Performance Testing
Testing with the intent of determining how quickly a product handles a variety of events. Automated test tools geared specifically to test and fine-tune performance are used most often for this type of testing.


Pilot Testing
Testing that involves the users just before actual release to ensure that users become familiar with the release contents and ultimately accept it. Often is considered a Move-to-Production activity for ERP releases or a beta test for commercial products. Typically involves many users, is conducted over a short period of time and is tightly controlled. (see beta testing)


Recovery/Error Testing
Testing how well a system recovers from crashes, hardware failures, or other catastrophic problems.


Regression Testing
Testing with the intent of determining if bug fixes have been successful and have not created any new problems. Also, this type of testing is done to ensure that no degradation of baseline functionality has occurred.


Sanity Testing
Sanity testing will be performed whenever cursory testing is sufficient to prove the application is functioning according to specifications. This level of testing is a subset of regression testing. It will normally include a set of core tests of basic GUI functionality to demonstrate connectivity to the database, application servers, printers, etc.


Security Testing
Testing of database and network software in order to keep company data and resources secure from mistaken/accidental users, hackers, and other malevolent attackers.



Software Testing
The process of exercising software with the intent of ensuring that the software system meets its requirements and user expectations and doesn't fail in an unacceptable manner. The organization and management of individuals or groups doing this work is not relevant. This term is often applied to commercial products such as internet applications. (contrast with independent verification and validation)


Stress Testing
Testing with the intent of determining how well a product performs when a load is placed on the system resources that nears and then exceeds capacity.


System Integration Testing
Testing a specific hardware/software installation. This is typically performed on a COTS (commercial off the shelf) system or any other system comprised of disparent parts where custom configurations and/or unique installations are the norm.


Unit Testing
Unit Testing is the first level of dynamic testing and is first the responsibility of the developers and then of the testers. Unit testing is performed after the expected test results are met or differences are explainable / acceptable.


Usability Testing
Testing for 'user-friendliness'. Clearly this is subjective and will depend on the targeted end-user or customer. User interviews, surveys, video recording of user sessions, and other techniques can be used. Programmers and testers are usually not appropriate as usability testers.


White Box Testing
Testing in which the software tester has knowledge of the inner workings, structure and language of the software, or at least its purpose.

Monday, September 3, 2007

Link checkers

Bugkilla - J2EE Functional Test Suite
Description:
Bugkilla will be a set of java tools for the functional test of J2EE Web Applications. Specification and execution of tests will be automated for web front end and business logic layer.
Requirement:
TBC
Download data:
Downloadable files: 5245 total downloads to date
ht://Check
Description:
Outputs a simple report. It can retrieve information through HTTP/1.1 and store them in a MySQL database. Most of the information is given by the PHP interface which comes with the package and that is able to query the database built by the htcheck program.
Requirement:
You need a Web server to use it, and PHP with the MySQL connectivity module.
Download data:
Downloadable files: 9983 total downloads to date
InSite
Description:
InSite is a free site management tool written in Perl.
Requirement:
Linux. Requires libwww and MIME::Lite (available at any CPAN mirror).
Download data:
Downloadable files: 5891 total downloads to date
Jenu
Description:
Jenu is a multithreaded, Java 1.3 (swing) based Web site URL Link checker. It's a copy of a nice multi-threaded link checker for the PC called Xenu.
Requirement:
Java 2 (1.3) runtime.
Download data:
Downloadable files: 3271 total downloads to date
JSpider
Description:
JSpider is a Web spider engine. It is a robot that will generate web traffic, just like you would do when you are browsing the internet. You can control and configure the robot's behaviour to adapt it to your needs. On it's way through sites, it will gather all kinds of information you might be interested in. You can use a web spider for different purposes: searching dead links (404 errors) on your website, testing your site's performance under havy load, copying an entire site to your harddisk, etc ...
Requirement:
Linux, Solaris, Windows, and other Java-enabled Operating Systems.
Download data:
Downloadable files: 76859 total downloads to date
Link Page Generator
Description:
Automatic link management program with -check option for marking/eliminating bad links (in cron job). Written in Perl.
Requirement:
TBC
Download data:
Downloadable files: 656 total downloads to date
LinkChecker
Description:
With LinkChecker you can check your HTML documents for broken links
Requirement:
Python 2.2.1. For HTTPS support you need to compile Python with the SSL _socket module.
Download data:
Downloadable files: 46528 total downloads to date
LinkVerify
Description:
LinkVerify checks a set of hypertext files whether all references to external resources are valid. In HTML this applies mostly to hyperlinks and embedded images. Style sheets will be checked too.
Requirement:
Java 1.1 is required
Download data:
Downloadable files: 0 total downloads to date

Bug databases

Abuky
Description:
Abuky stands for the Aoo BUg tracKing sYstem, while AOO stands for Art Of Open Source. Abuky is a system for tracking bugs and aiding the developer to fix them, written in Java with JSP as web interface.
Requirement:
Linux, Windows, Solaris
Download data:
No data feed available
Anthill Bug Manager
Description:
Anthill is a tool that aids code development by keeping track of bugs in a multi-project, multi-developer environment. It accomplishes this with a clean, simple, and fast interface that contains all the essential features but avoids the enormous complexity associated with most other projects of this type.
Requirement:
OS Independent
Download data:
Downloadable files: 2046 total downloads to date
BTsys
Description:
BTsys is a lightweight desktop bug tracking system, written using C# and ADO.NET for small developer teams. Easy to install and learn how to use.
Requirement:
All 32-bit MS Windows (95/98/NT/2000/XP)
Download data:
Downloadable files: 0 total downloads to date
BugBye
Description:
BugBye is a web-based bugtracking system developed using ASP.NET technology and C# as scripting language. It offers all the features needed to manage improvement, bugs, and so on. It also provide statistics help-desk management, and further options which allow the user to simplify all the stage of project development and maintainance.
Requirement:
All 32-bit MS Windows (95/98/NT/2000/XP)
Download data:
Downloadable files: 4282 total downloads to date
Bugfree
Description:
A lightweight and simple web-based bug tracking system available in Chinese and English.
Requirement:
Windows
Download data:
Downloadable files: 9905 total downloads to date
Buglog
Description:
Allows you to easily record bugs into a database along with description and screenshots of the bugs (file upload feature). The BLT allows tracking of all bugs on a project-wise basis thus making it a bug logging and tracking solution. BuglogV2 incorporates a powerful search feature allowing developers to locate bugs effortlessly.
Requirement:
All 32-bit MS Windows (95/98/NT/2000/XP)
Download data:
Downloadable files: 6964 total downloads to date
BugNet
Description:
A web based bug / issue tracking application programmed in C# and asp.net. The main goals are to keep the codebase simple, well documented, easy to deploy and scalable. Major features include: Generic DAL / XHTML and CSS layout.
Requirement:
All 32-bit MS Windows (95/98/NT/2000/XP)
Download data:
Downloadable files: 20532 total downloads to date
BugRat
Description:
BugRat is free Java software that provides a sophisticated, flexible bug reporting and tracking system.
Requirement:
TBC
Download data:
No data feed available
Bugs Online
Description:
Bugs Online was originally developed in 1997 to serve as the primary bug and issue tracking system to be utilized during a large development oriented project. The Bugs Online system is a very flexible and capable system for bug and issue tracking.
Requirement:
Windows NT 4.0 SP3+, MS IIS 3 w/ ASP
Download data:
Downloadable files: 22298 total downloads to date
Bugtrack
Description:
Web based bug tracking system written in Perl/DBI. Supports multiple users, projects, components, versions and email notification.
Requirement:
Linux, Solaris, Windows
Download data:
Downloadable files: 5369 total downloads to date
BugTracker.NET
Description:
BugTracker.NET is a free, web-based bug or issue tracker written using ASP.NET, C#, and Microsoft SQL Server/MSDE. It is in daily use by hundreds (maybe thousands) of development and support teams around the world.
Requirement:
All 32-bit MS Windows (95/98/NT/2000/XP)
Download data:
Downloadable files: 116106 total downloads to date
Bugzilla
Description:
Bugzilla has matured immensely, and now boasts many advanced features. These include: integrated, product-based granular security schema, inter-bug dependencies and dependency graphing, advanced reporting capabilities, a robust, stable RDBMS back-end, extensive configurability, a very well-understood and well-thought-out natural bug resolution protocol, email, XML, console, and HTTP APIs, available integration with automated software configuration management systems, including Perforce and CVS (through the Bugzilla email interface and checkin/checkout scripts), too many more features to list
Requirement:
TBC
Download data:
No data feed available
CodeTrack
Description:
Bug database with a friendly web front end aimed at medium and small development shops. Particularly suited for intranet and extranet environments, CodeTrack includes built-in strong authentication, and allows custom access control to individual projects. No database is required as bug data and developer notes are stored using simple XML text files.
Requirement:
Apache and PHP
Download data:
Downloadable files: 7916 total downloads to date
Debian bug tracking software
Description:
The Debian bug tracking system is a set of scripts which maintain a database of problem reports.
Requirement:
Unix
Download data:
No data feed available
Eventum
Description:
Eventum is a user-friendly and flexible issue tracking system that can be used by a support department to track incoming technical support requests, or by a software development team to quickly organize tasks and bugs.
Requirement:
PHP, MySQL
Download data:
No data feed available
Flyspray
Description:
Originally developed for the Psi project, Flyspray is an easy to use bug tracking system for those who do not require all the complexities of something like Bugzilla. It supports multiple users, file attachments, and Jabber notifications.
Requirement:
Web Environment
Download data:
No data feed available
GNATS
Description:
GNATS is a portable incident/bug report/help request-tracking system which runs on UNIX-like operating systems. It easily handles thousands of problem reports, has been in wide use since the early 90s, and can do most of its operations over e-mail. Several front end interfaces exist, including command line, emacs, and Tcl/Tk interfaces. There are also a number of Web (CGI) interfaces written in scripting languages like Perl and Python.
Requirement:
OS Independent
Download data:
No data feed available
Helis
Description:
Helis includes the main features of most bug tracking systems.
Requirement:
Linux web server (php 4/mysql + cgi)
Download data:
No data feed available
Issue Tracker Product
Description:
A straight forward and user friendly web application built on top of the Zope application server.
Requirement:
OS Independent, Zope
Download data:
Downloadable files: 949 total downloads to date
itracker
Description:
itracker is an issue tracking system designed to support projects with independent user bases. Features include multiple versions and components, detailed issue histories and email notifications. Soon based on Java Spring 2.0 and Hibernate.
Requirement:
OS Independent
Download data:
Downloadable files: 62295 total downloads to date
JitterBug
Description:
JitterBug is a web based bug tracking system. JitterBug operates by receiving bug reports via email or a web form. Authenticated users can then reply to the message, move it between different categories or add notes to it. In some ways JitterBug is like a communal web based email system. This web page is itself a JitterBug page.
Requirement:
TBC
Download data:
Downloadable files: 0 total downloads to date
JTrac
Description:
Trac is a generic issue-tracking web-application that can be easily customized by adding custom fields and drop-downs. Features include customizable workflow, field level permissions, e-mail integration, file attachments and a detailed history view.
Requirement:
OS Independent
Download data:
Downloadable files: 23097 total downloads to date
Mantis
Description:
Mantis is a php/MySQL/web based bugtracking system.
Requirement:
Windows, MacOS, OS/2, and a variety of Unix operating systems. Any web browser should be able to function as a clientWindows, MacOS, OS/2, and a
Download data:
Downloadable files: 449229 total downloads to date
Open Track
Description:
OpenTrack is a problem tracking(PR) system that is table driven and easily configurable/customizable for a variety of PR applications. Project defect tracking, help desk tracking, and requirements gathering can be easily handled by OpenTrack.
Requirement:
TBC
Download data:
No data feed available
PEST
Description:
PEST is a bug tracking system written especially for a web enviroment. It supports good testing and bug tracking processes, as well as notification.
Requirement:
TBC
Download data:
Downloadable files: 2103 total downloads to date
phpBugTracker
Description:
phpBugTracker is an attempt to copy the functionality of Bugzilla while providing a codebase that is independent of the database and presentation layers.
Requirement:
webserver with PHP 4.1.0+
Download data:
Downloadable files: 64200 total downloads to date
Request Tracker
Description:
RT is an industrial-grade ticketing system. It lets a group of people intelligently and efficiently manage requests submitted by a community of users. RT is used by systems administrators, customer support staffs, NOCs, developers and even marketing departments at over a thousand sites around the world.
Requirement:
Written in object-oriented Perl, RT is a high-level, portable, platform independent system
Download data:
No data feed available
Roundup Issue Tracker
Description:
Roundup is a simple-to-use and -install issue-tracking system with command-line, web and e-mail interfaces. It is based on the winning design from Ka-Ping Yee in the Software Carpentry "Track" design competition.
Requirement:
TBC
Download data:
Downloadable files: 33852 total downloads to date
Scarab
Description:
The goal of the Scarab project is to build an Issue / Defect tracking system that has the following features: A full feature set similar to those found in other Issue / Defect tracking systems: data entry, queries, reports, notifications to interested parties, collaborative accumulation of comments, dependency tracking In addition to the standard features, Scarab has fully customizable and unlimited numbers of Modules (your various projects), Issue types (Defect, Enhancement, etc), Attributes (Operating System, Status, Priority, etc), Attribute options (P1, P2, P3) which can all be defined on a per Module basis so that each of your modules is configured for your specific tracking requirements. Built using Java Servlet technology for speed, scalability, maintainability, and ease of installation. Import/Export ability via XML allowing for easy migration from other systems (like Bugzilla). Modular code design that allows manageable modifications of existing and new features over time. Fully customizable through a set of administrative pages. Easily modified UI look and feel. Can be integrated into larger systems by re-implementing key interfaces.
Requirement:
TBC
Download data:
No data feed available
Stabilizer
Description:
The Stabilizer bug tracking system aims to quickly stabilize buggy GUI applications so that people can get real work done with them. Users collaboratively and quickly stabilize a buggy GUI application simply by using the application normally and reporting any bugs that they encounter. As soon as a few people report the same bug, warnings will be issued to all users whenever they are about to trigger that bug and they will be given the opportunity to abort the input event -- thus avoiding the bug altogether and keeping the application stable.
Requirement:
All POSIX (Linux/BSD/UNIX-like OSes), Linux
Download data:
No data feed available
Trac
Description:
Trac is an enhanced wiki and issue tracking system for software development projects. Trac allows wiki markup in issue descriptions and commit messages, creating links and seamless references between bugs, tasks, changesets, files and wiki pages. A timeline shows all project events in order, making getting an overview of the project and tracking progress very easy.
Requirement:
Python, CGI-capable web server
Download data:
No data feed available
Track+
Description:
Track+ is a web based issue tracking and project management application targeted at medium to large commercial development projects. Track+ can be used instantly, yet it is flexible and configurable. Track+ is easy to use, provides user centric as well as project centric views, has configurable workflows, supports e-mail submission of issues, and has a comprehensive time and cost tracking module. Track+ is free to academic institutions, open source projects, and charities, and generally free to anybody up to 10 active users in the database. Track+ comes with the complete source code.
Requirement:
OS Independent (Written in an interpreted language)
Download data:
Downloadable files: 96248 total downloads to date
TrackIt
Description:
TrackIt is a Web-based project tracking tool that incorporates defect tracking functionality. It is designed from the ground up to provide maximum flexibility, customization, and most importantly, usefulness to the developer. It has built-in support for various Extreme Programming constructs, as well as full CVS and Subversion integration. It also supports simple listings via HQL and advanced reporting via SQL.
Requirement:
JRE 1.5
Download data:
Downloadable files: 14370 total downloads to date
WREQ
Description:
Wreq is designed to be a distributed request/problem tracking system with builtin knowledge database to help systems personnel to stay on top of requests and to prompt knowledge sharing among all local support groups.
Requirement:
To use wreq, first you must have perl version 5 with GDBM support installed on your web server.
Download data:
No data feed available

Test management tools

Bugzilla Test Runner
Description:
Bugzilla Test Runner is a test case management system that works as an add-on over the Bugzilla bug-tracking system.
Requirement:
Bugzilla 2.16.3 or above
Download data:
Downloadable files: 16478 total downloads to date
Data Generator
Description:
The Data Generator is a free, open source script written in JavaScript, PHP and MySQL that lets you quickly generate large volumes of custom data in a variety of formats for use in testing software, populating databases and more.
Requirement:
All
Download data:
No data feed available
Fitnesse
Description:
FitNesse is a collaborative testing and documentation tool. It provides a very simple way for teams to collaboratively create documents, specify tests, and run those tests.
Requirement:
Mac, Wnidows, POSIX
Download data:
Downloadable files: 24182 total downloads to date
qaProjectManager
Description:
qaProjectManager is a web based application used for keeping track of engineering and customer releases of Software Projects, Resource allocations and related information. It helps QA Managers to keep track of releases effectively.Powered by OpenXava and Java.
Requirement:
Platform Independent
Download data:
Downloadable files: 158 total downloads to date
QATraq
Description:
Covers everything from defining test plans to writing test cases and recording results.
Requirement:
Windows, BSD, Linux, SunOS/Solaris
Download data:
Downloadable files: 21747 total downloads to date
rth
Description:
web-based tool designed to manage requirements, tests, test results, and defects throughout the application life cycle. The tool provides a structured approach to software testing and increases the visibility of the testing process by creating a common repository for all test assets including requirements, test cases, test plans, and test results.
Requirement:
All 32-bit MS Windows (95/98/NT/2000/XP), All POSIX (Linux/BSD/UNIX-like OSes), IBM AIX
Download data:
Downloadable files: 8442 total downloads to date
Salome-TMF
Description:
Salome-TMF is an independent Test Management Tool, which helps you to manage your entire testing process – by creating tests, executing manual or automatic tests, tracking results, managing requirements and defects and producing HTML documentation. Salome-TMF is compatible with Junit, Abbot and Beanshell to define your automatic tests, and with Bugzilla and Mantis to manage your defects. Salome-TMF can also be extended by plug-in according to your requirements.
Requirement:
Java
Download data:
No data feed available
TCW
Description:
Test Case Web (TCW) is an online TCM system built with PHP and a SQL backend. It provides an efficient means for generation, organization, and execution reporting of test cases among projects and by multiple testers and versions. It provides various at-a-glance views of the test suite for easy status determination and test suite navigation. TCW also provides basic reporting capabilities and per-project access control.
Requirement:
Any (PHP/SQL/Apache)
Download data:
Downloadable files: 4012 total downloads to date
Tesly
Description:
Tesly is a Web application written in PHP that helps you create, execute, and report on test plans. QA leaders can track the progress of testing as testers use the interface to report completion of test cases.
Requirement:
OS Independent
Download data:
Downloadable files: 3242 total downloads to date
Test Environment Toolkit
Description:
Open source version of TETware, a proprietary multi-platform test framework for test suite management (administration, reporting and sequencing of tests). This open-source version is for Linux and UNIX system users only. The differences between the open source version and the other version for which a commercial support offering is available is in platform support (WIN32 and Java) rather than functionality.
Requirement:
Linux or Unix
Download data:
No data feed available
Test Run
Description:
Test planning software that is a commercial package but available for free to open source, non-profit and educational projects.
Requirement:
Windows or UNIX
Download data:
No data feed available
Testitool
Description:
Testitool is a Web-based application for QA test planning. It creates a test plan and populates it with test cases, maps test cases to functional requirements, instantiates a test plan, begins executing test cases and marks them as successful or failed, generates reports on your test plans, copies test plans and test cases, and tailors test plan instances by adding and removing test cases from them.
Requirement:
Apache, PHP, MySQL
Download data:
Downloadable files: 652 total downloads to date
TestLink
Description:
Web-based test management and test execution system allowing QA teams to create, manage, execute and track test cases and organize them into test plans.
Requirement:
Apache, MySQL, PHP
Download data:
Downloadable files: 42858 total downloads to date
TestMaster
Description:
A testcase management, logging, reporting and test automation tool, similar to the commercial product Test Director. Features: Progress stats, reports, test case import from CSV,doc,web or SQL, STAF plugin.
Requirement:
Linux, Apache, PostgreSQL
Download data:
Downloadable files: 6259 total downloads to date
For those projects hosted on SourceForge, the project activity data is updated weekly using live newsfeeds powered by CaRP

unit testing tools

Crosscheck
Description:
Crosscheck is an open source testing framework for verifying your in-browser javascript. It helps you ensure that your code will run in many different browsers such as Internet Explorer and Firefox, but without needing installations of those browsers. The only thing you need is a Java Virtual Machine.
Requirement:
javascript java
Download data:
Downloadable files: 1656 total downloads to date
JavaScript Assertion Unit
Description:
If you're a JavaScript developer, with or without a long experience of coding using this nice scripting language, we hope this tool will help to improve your coding skill and to release more robust software thru an intensive testing practice.
Requirement:
OS Independent
Download data:
Downloadable files: 5592 total downloads to date
JSCoverage
Description:
JSCoverage is a tool that generates code coverage statistics for JavaScript programs. JSCoverage works by instrumenting the JavaScript code used in web pages. Code coverage statistics are collected while the instrumented JavaScript code is executed in a web browser. JSCoverage works with any modern standards-compliant web browser, including Internet Explorer, Firefox, and Opera.
Requirement:
Windows, Linux
Download data:
No data feed available
jsmock
Description:
JSMock is a fully featured Mock Object library for JavaScript that provides the necessary tools to do effective interactive based testing.
Requirement:
Internet Explorer / Firefox / Safari
Download data:
Downloadable files: 469 total downloads to date
JSNUnit
Description:
JSNUnit is unique in that it tests JavaScript within the ASP .NET and Browser environments. It does not require a separate runner that runs as an EXE. The same code works on both the server and the client when testing Ajax applications in a .NET environment.
Requirement:
.NET
Download data:
No data feed available
JsUnit
Description:
Edward Hieatt's JsUnit is a Unit Testing framework for client-side (in-browser) JavaScript. It is essentially a port of JUnit to JavaScript. Also included is a platform for automating the execution of tests on multiple browsers and mutiple machines running different OSs. The advantage of testing JavaScript inside the browser is that you can run your tests in all your targeted browsers. This goes a long way to addressing the old problem of inconsistency in JavaScript implementations across browsers.
Requirement:
JavaScript 1.4 or higher, wide range of browsers supported.
Download data:
Downloadable files: 42951 total downloads to date
JsUnit (2)
Description:
Jörg Schaible's JsUnit is a simple framework to write repeatable tests in JavaScript and is a port of JUnit 3.8.1, covering the core system and the examples. This version concentrates on the command-line and the server-side JavaScript usage.
Requirement:
tbc
Download data:
No data feed available
For those projects hosted on SourceForge, the project activity data is updated weekly using live newsfeeds powered by CaRP

unit testing tools

xmlMessageTest
Description:
Unit-test your XML-based message server without writing any code. Simply document XML messages to send to the server and messages expected back. Can be used by developers or less technical users. Can be easily integrated into an automated build process. Includes sample tests. Runs on virtually any Java-enabled platform. Requires JDK 1.4 or higher.
Requirement:
Windows, Linux
Download data:
No data feed available
XMLUnit
Description:
XMLUnit extends JUnit to simplify unit testing of XML. It compares a control XML document to a test document or the result of a transformation, validates documents against a DTD, and (from v0.5) compares the results of XPath expressions.
Requirement:
OS Independent
Download data:
Downloadable files: 35812 total downloads to date
XUnit
Description:
XUnit is to XML-oriented Programming as JUnit is to Java programs: XUnit uses Active Tags as a simple framework to write repeatable tests. With XUnit, you can well-try and improve your own Active Tags program as well as external XML processes such as XSLT. But you are also encouraged to use XUnit for testing Java programs that are producing XML documents.
Requirement:
Java 1.4
Download data:
No data feed available
For those projects hosted on SourceForge, the project activity data is updated weekly using live newsfeeds powered by CaRP

unit testing tools

Amock
Description:
Amock is a mock object library written in PHP 5, inspired by EasyMock. Mock objects for classes or interfaces are generated on the fly using a source code generator.
Requirement:
POSIX
Download data:
No data feed available
izh_test
Description:
izh_test is a xUnit-like framework which allows users to test php pages using the console version of php, uses file compare for checking results of tests, and can test session state content and db state content too
Requirement:
Windows
Download data:
Downloadable files: 361 total downloads to date
PHP Assertion Unit Framework
Description:
Unit testing framework based on assertions which helps PHP developers test their code. Failing assertions about the program state are tracked in a Reporter window of a DOM-compliant browser such as IE5+, Mozilla, Netscape 6+, etc.
Requirement:
tbc
Download data:
Downloadable files: 5592 total downloads to date
PHPUnit
Description:
Unit testing framework for PHP based on the "JUnit" framework for Java
Requirement:
OS Independent, PHP
Download data:
Downloadable files: 29627 total downloads to date
PHPUnit
Description:
PHPUnit is a family of PEAR packages (PHPUnit2 for PHP 5, PHPUnit for PHP 4) that supports the development of object-oriented PHP applications using the concepts and methods of Agile Software Development, Extreme Programming, Test-Driven Development and Design-by-Contract Development by providing an elegant and robust framework for the creation, execution and analysis of Unit Tests.
Requirement:
PHP4, PHP5
Download data:
No data feed available
SimpleTest
Description:
Unit testing, web testing and mock objects framework for PHP. Additional features are generation of server stubs, integration of PhpUnit and PEAR test cases, on-line tutorials and documentation. The web testing won't be fully finished until version 1.0, but the other functionality is stable.
Requirement:
PHP
Download data:
Downloadable files: 56230 total downloads to date
Spike PHPCheckstyle
Description:
Spike PHPCheckstyle is an open-source tool that helps PHP programmers adhere to certain coding conventions. The tools checks the input PHP source code and reports any deviations from the coding convention.
Requirement:
PHP 5.0 and newer
Download data:
No data feed available
Spike PHPCoverage
Description:
Spike PHPCoverage is an open-source tool for measuring and reporting code coverage provided by the test suite of a PHP application. Spike PHPCoverage can instrument and record the line coverage information for any PHP script at runtime.
Requirement:
PHP
Download data:
Downloadable files: 1165 total downloads to date
Testilence
Description:
Testilence is a unit-testing library for programs written in PHP 5. Although it is similar to other JUnit-inspired unit testing libraries, Testilence is written with an emphasis on what is useful, not what is usual. That said, most clever ways of doing useful things for unit test authors and users have already been discovered. Testilence combines original ideas with the best features found in different unit-testing toolkits into a coherent set.
Requirement:
POSIX
Download data:
No data feed available
For those projects hosted on SourceForge, the project activity data is updated weekly using live newsfeeds powered by CaRP

Unit Testing Tools

Aunit
Description:
AUnit is a set of Ada packages based on the xUnit family of unit test frameworks.
Requirement:
Unix, Windows
Download data:
No data feed available
DTraq
Description:
DTraq is a data logging and review debugging tool providing near realtime data logging and analysis to aid Ada debugging and validation.
Requirement:
PC / Linux
Download data:
No data feed available
ProofPower
Description:
ProofPower is a suite of tools including a compliance tool for specifying and verifying Ada programs..
Requirement:
Solaris, Linux, Mac
Download data:
No data feed available
tg
Description:
A Simple Test Driver Generator for Ada Programs.
Requirement:
GNAT
Download data:
No data feed available
For those projects hosted on SourceForge, the project activity data is updated weekly using live newsfeeds powered by CaRP

Performance test tools

Apache JMeter
Description:
Apache JMeter is a 100% pure Java desktop application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to other test functions. 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.
Requirement:
Solaris, Linux, Windows (98, NT, 2000). JDK1.4 (or higher).
Download data:
No data feed available
CLIF is a Load Injection Framework
Description:
CLIF is a modular and flexible distributed load testing platform. It may address any target system that is reachable from a Java program (HTTP, DNS, TCP/IP...) CLIF provides 3 user interfaces (Swing or Eclipse GUI, command line) to deploy, control and monitor a set of distributed load injectors and resource consumption probes (CPU, memory...) An Eclipse wizard helps programming support for new protocols. Load scenarios are defined through XML-editing, using a GUI, or using a capture tool. The scenario execution engine allows the execution of up to millions of virtual users per load injector.
Requirement:
Java 1.5 or greater, with enhanced support for Linux, Windows XP, MacOSX/PPC
Download data:
No data feed available
curl-loader
Description:
A C-written web application testing and load generating tool. The goal of the project is to provide a powerful open-source alternative to Spirent Avalanche and IXIA IxLoad. The loader uses real HTTP, FTP and TLS/SSL protocol stacks, simulating tens of thousand and hundred users/clients each with own IP-address. The tool supports user authentication, login and a range of statistics.
Requirement:
linux
Download data:
Downloadable files: 3011 total downloads to date
Database Opensource Test Suite
Description:
The Database Opensource Test Suite (DOTS) is a set of test cases designed for the purpose of stress-testing database server systems in order to measure database server performance and reliability.
Requirement:
Linux, POSIX
Download data:
Downloadable files: 90856 total downloads to date
DBMonster
Description:
DBMonster is an application to generate random data for testing SQL database driven applications under heavy load.
Requirement:
OS Independent
Download data:
Downloadable files: 12890 total downloads to date
Deluge
Description:
An open-source web site stress test tool. Simulates multiple user types and counts. Includes proxy server for recording playback scripts, and log evaluator for generating result statistics. Note: this tool is no longer under active development although it is still available on Sourceforge.
Requirement:
OS independent
Download data:
Downloadable files: 8661 total downloads to date
Dieseltest
Description:
Contains the high-end features common to packages costing $50,000 or more. Dieseltest is a Windows application that simulates hundreds or thousands of users hitting a website. To run a load test, you first create a test script using our script editor. The script contains all of the requests that a real-world user would make of a website. You then load the script and run the test. The system will show you real-time results while the script is running, and produce a report analyzing the results at the conclusion.
Requirement:
Windows
Download data:
Downloadable files: 13672 total downloads to date
Faban
Description:
Faban is a facility for developing and running benchmarks, developed by Sun. It has two major components, the Faban harness and the Faban driver framework. The Faban harness is a harness to automate running of server benchmarks as well as a container to host benchmarks allowing new benchmarks to be deployed in a rapid manner. Faban provides a web interface to launch & queue runs, and extensive functionality to view, compare and graph run outputs.
Requirement:
OS independent; JVM 1.5 or later.
Download data:
No data feed available
FunkLoad
Description:
FunkLoad is a functional and load web tester, written in Python, whose main use cases are functional and regression testing of web projects, performance testing by loading the web application and monitoring your servers, load testing to expose bugs that do not surface in cursory testing, and stress testing to overwhelm the web application resources and test the application recoverability, and writing web agents by scripting any web repetitive task, like checking if a site is alive.
Requirement:
OS independent - except for the monitoring which is Linux specific.
Download data:
No data feed available
Grinder
Description:
The Grinder is a Java load-testing framework making it easy to orchestrate the activities of a test script in many processes across many machines, using a graphical console application.
Requirement:
OS Independent
Download data:
Downloadable files: 148800 total downloads to date
Hammerhead 2 - Web Testing Tool
Description:
Hammerhead 2 is a stress testing tool designed to test out your web server and web site. It can initiate multiple connections from IP aliases and simulated numerous (256+) users at any given time. The rate at which Hammerhead 2 attempts to pound your site is fully configurable, there are numerous other options for trying to create problems with a web site (so you can fix them).
Requirement:
Hammerhead has been used with Linux, Solaris and FreeBSD.
Download data:
Downloadable files: 24238 total downloads to date
Hammerora
Description:
Hammerora is a load generation tool for the Oracle Database and Web Applications. Hammerora includes pre-built schema creation and load tests based on the industry standard TPC-C and TPC-H benchmarks to deploy against the Oracle database with multiple users. Hammerora also converts and replays Oracle trace files and enables Web-tier testing to build bespoke load tests for your entire Oracle application environment.
Requirement:
Platform Independent (Binaries for Linux and Windows)
Download data:
Downloadable files: 10677 total downloads to date
httperf
Description:
Httperf is a tool for measuring web server performance. It provides a flexible facility for generating various HTTP workloads and for measuring server performance. The focus is not on implementing one particular benchmark but on providing a robust, high-performance tool that facilitates the construction of both micro and macro level benchmarks. The three distinguishing characteristics of httperf are its robustness, which includes the ability to generate and sustain server overload, support for the HTTP/1.1 and SSL protocols, and its extensibility.
Requirement:
linux (Debian package available), HP-UX, perhaps other Unix
Download data:
No data feed available
http_load
Description:
http_load runs multiple HTTP fetches in parallel, to test the throughput of a Web server. However, unlike most such test clients, it runs in a single process, to avoid bogging the client machine down. It can also be configured to do HTTPS fetches.
Requirement:
tbc
Download data:
No data feed available
JChav
Description:
JChav is a way to see the change in performance of your web application over time, by running a benchmark test for each build you produce. JChav reads all the JMeter logs from each of your runs (one per build), and produces a set of charts for each test in each run.
Requirement:
JMeter
Download data:
No data feed available
JCrawler
Description:
Stress-Testing Tool for web-applications. It comes with the crawling/exploratory feature. You can give JCrawler a set of starting URLs and it will begin crawling from that point onwards, going through any URLs it can find on its way and generating load on the web application. The load parameters (hits/sec) are configurable.
Requirement:
OS Independent
Download data:
Downloadable files: 7182 total downloads to date
Lobo, Continuous Tuning
Description:
Lobo is a tool for performance testing and monitoring that allows you to monitor the evolution of performance along the time-line of the project. It was specially designed to be used in agile-iterative and evolutionary approaches.
Requirement:
Java
Download data:
No data feed available
NTime
Description:
The NTime tool is very similar to NUnit tool to perform repeatable tasks that help managers, architects, developers and testers to test an application against its performance.
Requirement:
Windows 98 or above, .Net framework 1.1 or 2.0
Download data:
No data feed available
OpenSTA
Description:
A distributed software testing architecture based on CORBA. Using OpenSTA (Open System Testing Architecture) a user can generate realistic heavy loads simulating the activity of hundreds to thousands of virtual users. OpenSTA graphs both virtual user response times and resource utilization information from all Web Servers, Application Servers, Database Servers and Operating Platforms under test, so that precise performance measurements can be gathered during load tests and analysis on these measurements can be performed.
Requirement:
Windows 2000, NT4 and XP
Download data:
Downloadable files: 239241 total downloads to date
OpenWebLoad
Description:
OpenLoad is a tool for load testing web applications. It aims to be easy to use and providing near real-time performance measurements of the application under test.
Requirement:
Linux, DOS
Download data:
Downloadable files: 30480 total downloads to date
p-unit
Description:
An open source framework for unit test and performance benchmark, which was initiated by Andrew Zhang, under GPL license. p-unit supports to run the same tests with single thread or multi-threads, tracks memory and time consumption, and generates the result in the form of plain text, image or pdf file.
Requirement:
OS Independent
Download data:
Downloadable files: 716 total downloads to date
Seagull
Description:
Seagull is a multi-protocol traffic generator test tool. Primary aimed at IMS protocols, Seagull is a powerful traffic generator for functional, load, endurance, stress and performance tests for almost any kind of protocol. Currently supports Diameter, XCAP over HTTP, TCAP (GSM Camel, MAP, Win) protocols.
Requirement:
Linux/Unix/Win32-Cygwin
Download data:
Downloadable files: 10081 total downloads to date
Siege
Description:
SIEGE is an http regression testing and benchmarking utility. It was designed to let web developers measure the performance of their code under duress, to see how it will stand up to load on the internet. It lets the user hit a webserver with a configurable number of concurrent simulated users. Those users place the webserver "under siege." SCOUT surveys a webserver and prepares the urls.txt file for a siege. In order to perform regression testing, siege loads URLs from a file and runs through them sequentially or randomly. Scout makes the process of populating that file easier. You should send out the scout, before you lay siege.
Requirement:
GNU/Linux, AIX, BSD, HP-UX and Solaris.
Download data:
Downloadable files: 630 total downloads to date
Sipp
Description:
SIPp is a performance testing tool for the SIP protocol. Its main features are basic SIPStone scenarios, TCP/UDP transport, customizable (xml based) scenarios, dynamic adjustement of call-rate and a comprehensive set of real-time statistics. It can also generate media (RTP) traffic for audio and video calls.
Requirement:
Linux/Unix/Win32-Cygwin
Download data:
Downloadable files: 92931 total downloads to date
SLAMD
Description:
SLAMD Distributed Load Generation Engine is a Java-based application designed for stress testing and performance analysis of network-based applications.
Requirement:
Any system with Java 1.4 or higher
Download data:
No data feed available
Soap-Stone
Description:
Network benchmark application which can put your network under load and conduct automatic benchmark and recording activities.
Requirement:
OS Independent
Download data:
Downloadable files: 3235 total downloads to date
stress_driver
Description:
General-purpose stress test tool.
Requirement:
Windows NT/2000, Linux
Download data:
Downloadable files: 4679 total downloads to date
TestMaker
Description:
TestMaker from PushToTest.com delivers a rich environment for building and running intelligent test agents that test Web-enabled applications for scalability, functionality, and performance. It comes with a friendly graphical user environment, an object-oriented scripting language (Jython) to build intelligent test agents, an extensible library of protocol handlers (HTTP, HTTPS, SOAP, XML-RPC, SMTP, POP3, IMAP), a new agent wizard featuring an Agent Recorder to write scripts for you, a library of fully-functional sample test agents, and shell scripts to run test agents from the command line and from unit test utilities.
Requirement:
Java 1.4 or higher virtual machine on Windows, Linux, Solaris, and Macintosh.
Download data:
No data feed available
TPTEST
Description:
The purpose with TPTEST is to allow users to measure the speed of their Internet connection in a simple way. TPTEST measures the throughput speed to and from various reference servers on the Internet. The use of TPTEST may help increase the consumer/end user knowledge of how Internet services work.
Requirement:
MacOS/Carbon and Win32
Download data:
Downloadable files: 102418 total downloads to date
Tsung
Description:
Tsung is a distributed load testing tool. It is protocol-independent and can currently be used to stress HTTP, SOAP and Jabber servers (SSL is supported). It simulates complex user's behaviour using an XML description file, reports many measurements in real time (including response times, CPU and memory usage from servers, customized transactions, etc.). HTML reports (with graphics) can be generated during the load. For HTTP, it supports 1.0 and 1.1, has a proxy mode to record sessions, supports GET and POST methods, Cookies, and Basic WWW-authentication. It has already been used to simulate thousands of virtual users.
Requirement:
Tested on Linux, but should work on MacOSX and Windows.
Download data:
No data feed available
Valgrind
Description:
Valgrind is an award-winning suite of tools for debugging and profiling Linux programs. With the tools that come with Valgrind, you can automatically detect many memory management and threading bugs, avoiding hours of frustrating bug-hunting, making your programs more stable. You can also perform detailed profiling, to speed up and reduce memory use of your programs.
Requirement:
Linux
Download data:
No data feed available
Web Application Load Simulator
Description:
LoadSim is a web application load simulator. It allows you to create simulations and have those simulations run against your webserver.
Requirement:
JDK 1.3 or above
Download data:
Downloadable files: 8522 total downloads to date
Web Polygraph
Description:
Benchmarking tool for caching proxies, origin server accelerators, L4/7 switches, content filters, and other Web intermediaries.
Requirement:
C++ compiler
Download data:
No data feed available
WebLOAD
Description:
WebLOAD Open Source is a fully functional, commercial-grade performance testing product based on WebLOAD, Radview's flagship product that is already deployed at 1,600 sites. Available for free download and use, WebLOAD is a commercial-grade open source project with more than 250 engineering years of product development. Companies that require commercial support, additional productivity features and compatibility with third-party protocols have the option of purchasing WebLOAD Professional directly from RadView.
Requirement:
32-bit MS Windows (NT/2000/XP), Linux, Windows Server 2003
Download data:
Downloadable files: 23870 total downloads to date
For those projects hosted on SourceForge, the project activity data is updated weekly using live newsfeeds powered by CaRP

Apache JMeter

Apache JMeter
Description:
Apache JMeter is a 100% pure Java desktop application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to other test functions. 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.
Requirement:
Solaris, Linux, Windows (98, NT, 2000). JDK1.4 (or higher).
Download data:
No data feed available

Tuesday, August 28, 2007

Domain Testing--Perspective (Part 2/3) (BBST)

Risk-Based Software Testing

ISTQB certification

Content of the exams

The exam for the Foundation Level has more theoretical nature and requests for knowledge about the software development area - especially in the field of testing.

The different Advanced Level exams are more practical and they deepen the gained knowledge in special areas. Test Manager deal with the planning and control of the test process. Functional Tester concern themselves among other things with reviews and Black box testing methods. Technical Tester look into the subject component tests (also called unit test), where they use inter alia White box testing methods and non-functional testing methods and also includes test tools. The Expert Level is still in preparation.

Premises

The exam Foundation Level has no premises. To take the Advanced Level exam, candidates need to pass the Foundation Level exam first and must prove having at least 60 months of professional experience (in USA). In India 24 months and Germany it is 18 months.

Exam

The exam consists of a multiple-choice test, which until 2005 about 80% of the candidates passed. A reason for this can be, that people can learn by self-study without visiting preparation seminars, because the syllabus is available for free in the internet.

In USA pure exam fees for Foundation Level are $250.00. For Advanced Level it is for each component exam US $200.00 and there is a one-time qualification fee of US $100.00 (date: september 2006).

Certificates are valid for life time (Foundation Level and Advanced Level) and do not need recertification.

So called testing boards are responsible for the quality and the auditing. Worldwide there are in 33 countries testing boards (date: april 2007). In USA the corresponding organ is the ASTQB (American Software Testing Qualifications Board).

Register for Exams

Learn more about ISTQB certification and exams in your country by clicking here [1].


Figures about Certified Testers worldwide

At the moment there are over 60000 ISTQB Certified Testers worldwide. One reason for this is, that organizations which offer also certifications for software testers affiliate with ISTQB (e.g. ISEB (Information Systems Examination Board)). At the moment Germany, India and USA are leading in the real Certified Tester programs.
The QAI (Quality Assurance Institute) is another organization, which offers in more than 40 countries certificates.

Six Sigma Black Belt Certification - SSBB

The Certified Six Sigma Black Belt is a professional who can explain Six Sigma philosophies and principles, including supporting systems and tools. A Black Belt should demonstrate team leadership, understand team dynamics and assign team member roles and responsibilities. Black Belts have a thorough understanding of all aspects of the DMAIC model in accordance with Six Sigma principles. They have basic knowledge of Lean enterprise concepts, are able to identify non-value-added elements and activities and are able to use specific tools.

1. Is this the right certification for you?
Understand the minimum expectations, requirements, experience, and the exam specifics for a Six Sigma Black Belt. Note: Six Sigma Black Belt certification requires that you complete at least one Six Sigma project and submit a project affidavit. Review frequently asked questions regarding projects and the affidavit/verfication.

2. Prepare for the exam.
Review the Body of Knowledge and references. Take advantage of the study guide and sample exams. See what training and books ASQ has to offer.

3. Choose an exam date.
Find the best date and location that works for you. (Note the application deadlines for each exam date.)

4. Apply for certification.
ASQ offers several ways to apply. Have your documentation and credit card ready to apply online.

5. Recertify.
ASQ requires that you recertify as a Six Sigma Black Belt every three years—either by documenting RU credits or by testing.

Download the Six Sigma Black Belt Certification Brochure (PDF, 176 KB)

*$50 of your fee is an application fee, and is not refundable.

Quality Improvement Associate Certification - CQIA

The Certified Quality Improvement Associate has a basic knowledge of quality tools and their uses and is involved in quality improvement projects, but doesn't necessarily come from a traditional quality area.

1. Is this the right certification for you?
Understand the requirements and exam specifics for a Quality Improvement Associate.

2. Prepare for the exam.
Review the Body of Knowledge and references. Take advantage of the study guide and sample exams. See what training and books ASQ has to offer.

3. Choose an exam date.
Find the best date and location for you. (Note the application deadlines for each exam date.)

4. Apply for certification.
ASQ offers several ways to apply. Have your documentation and credit card ready to apply online.

NOTE: The Quality Improvement Associate Certification has no recertification requirements. It is a lifetime certification.

Download the Quality Improvement Associate Certification Brochure (PDF, 234 KB)

*$50 of your fee is an application fee, and is not refundable.

Software Quality Engineer Certification - CSQE




The Certified Software Quality Engineer understands software quality development and implementation, software inspection, testing, verification and validation; and implements software development and maintenance processes and methods.

1. Is this the right certification for you?
Understand the minimum expectations, requirements, experience, and the exam specifics for a Software Quality Engineer.

2. Prepare for the exam.
Review the Body of Knowledge and references. Take advantage of the study guide and sample exams. See what training and books ASQ has to offer.

3. Choose an exam date.
Find the best date and location that works for you. (Note the application deadlines for each exam date.)

4. Apply for certification.
ASQ offers several ways to apply. Have your documentation and credit card ready to apply online.

5. Recertify.
ASQ requires that you recertify as a Software Quality Engineer every three years—either by documenting RU credits or by testing.

Download the Software Quality Engineer Certification Brochure (PDF, 192 KB)

*$50 of your fee is an application fee, and is not refundable.

Monday, August 27, 2007

Usability test for Cyworld Tw: Task 4

Usability test for Cyworld Tw: Task 3

SPL 2007 Low Fidelity Usability Test

Usability test for Cyworld Tw: Task 2

Usability test for Cyworld Tw: Task 1

Web Testing with Sahi - Part 2

Web Testing with Sahi

How to test a web app

Testing WebApps with OttoMate

Unit Testing with Team System

freeSpeech test

Visual Web Service Client

file management

JTR 4.0 Distributed Testing Demo

Testing Swing Apps w/ Frankenstein

Muvee Framework for Autonomous..

Ruby Tools for Building Web Testing

Specification based Testing

Bill Schongar - Making Automated Testing

performance testing

Jmeter

Presenting the apple

Stress test

How to write test case

Saturday, August 25, 2007

Software Testing Notes

Software Testing Types:

Black box testing - Internal system design is not considered in this type of testing. Tests are based on requirements and functionality.

White box testing - This testing is based on knowledge of the internal logic of an application’s code. Also known as Glass box Testing. Internal software and code working should be known for this type of testing. Tests are based on coverage of code statements, branches, paths, conditions.

Unit testing - Testing of individual software components or modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. may require developing test driver modules or test harnesses.

Incremental integration testing - Bottom up approach for testing i.e continuous testing of an application as new functionality is added; Application functionality and modules should be independent enough to test separately. done by programmers or by testers.

Integration testing - Testing of integrated modules to verify combined functionality after integration. Modules are typically code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to client/server and distributed systems.

Functional testing - This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type testing geared to functional requirements of an application.

System testing - Entire system is tested as per the requirements. Black-box type testing that is based on overall requirements specifications, covers all combined parts of a system.

End-to-end testing - Similar to system testing, involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate.

Sanity testing - Testing to determine if a new software version is performing well enough to accept it for a major testing effort. If application is crashing for initial use then system is not stable enough for further testing and build or application is assigned to fix.

Regression testing - Testing the application as a whole for the modification in any module or functionality. Difficult to cover all the system in regression testing so typically automation tools are used for these testing types.

Acceptance testing -Normally this type of testing is done to verify if system meets the customer specified requirements. User or customer do this testing to determine whether to accept application.

Load testing - Its a performance testing to check system behavior under load. Testing an application under heavy loads, such as testing of a web site under a range of loads to determine at what point the system’s response time degrades or fails.

Stress testing - System is stressed beyond its specifications to check how and when it fails. Performed under heavy load like putting large number beyond storage capacity, complex database queries, continuous input to system or database load.

Performance testing - Term often used interchangeably with ’stress’ and ‘load’ testing. To check whether system meets performance requirements. Used different performance and load tools to do this.

Usability testing - User-friendliness check. Application flow is tested, Can new user understand the application easily, Proper help documented whenever user stuck at any point. Basically system navigation is checked in this testing.

Install/uninstall testing - Tested for full, partial, or upgrade install/uninstall processes on different operating systems under different hardware, software environment.

Recovery testing - Testing how well a system recovers from crashes, hardware failures, or other catastrophic problems.

Security testing - Can system be penetrated by any hacking way. Testing how well the system protects against unauthorized internal or external access. Checked if system, database is safe from external attacks.

Compatibility testing - Testing how well software performs in a particular hardware/software/operating system/network environment and different combination s of above.

Comparison testing - Comparison of product strengths and weaknesses with previous versions or other similar products.

Alpha testing - In house virtual user environment can be created for this type of testing. Testing is done at the end of development. Still minor design changes may be made as a result of such testing.

Beta testing - Testing typically done by end-users or others. Final testing before releasing application for commercial purpose.

Monday, August 13, 2007

how to become an software testing expert

AJAX Testing

With the increasing popularity of Web 2.0, a large number of web applications have become more complex using advanced techniques such as Asynchronous JavaScript and XML (AJAX) which gives tremendous usability benefits. AJAX makes asynchronous calls to the web server to create more responsive web applications. Testing AJAX-based web applications is even more challenging compared to traditional web applications.
AJAX Testing Needs

* Functional Testing
* Load Testing
* Regression Testing

In traditional web applications, the HTML elements are already loaded in the web pages which has been fairly easy to test in an automated fashion. Unfortunately, AJAX-based web applications are not as easy or consistent to test as the traditional web applications. The problem with AJAX testing is that the web page under test will be modified asynchronously such as an element will be dynamically added based on a check box click or an element will be removed based on a list element selection, etc. To handle this dynamic element creation or removal using AJAX technique, QEngine provides some specific AJAX functions which are as follows.

*

waitForDynamicElement - During playback, the test waits until the HTML Element with the given tag name and matching property name and value is identified.
*

waitForDynamicElementRemoval - During playback, the test waits until the specified HTML Element with the given tag name and matching property name and value, is removed from the HTML page.
*

waitForElement - During playback, the test waits until the specified HTML Element with the given Element ID is identified.
*

waitForElementRemoval - During playback, the test waits until the HTML Element with the given Element ID is removed.
*

waitForText - During playback, the test waits until the specified search text (with the given prefix and suffix text) appears in the HTML page that is identified in the last user action.
*

waitForTitle - During playback, the test waits until the specified window title appears in the last identified HTML page.

You can insert any of the above AJAX functions in non-recording mode to handle the user actions that uses AJAX calls. These functions allow you to specify a condition such as an element to identify or text to appear and the maximum time to wait until the given condition is satisfied. Returns true and the test proceeds to the next line in the script, if the given condition is satisfied within the specified wait time. Returns false and the test proceeds to the next line in the script, if the given condition is not attainable within the specified wait time.

Tools varieties for testing

Functional Testing
Functional Testing Features Easy to Learn
Functional Testing Features Unicode Enabled
Functional Testing Features Powerful Checkpoints
Functional Testing Features Data-driven Testing
Functional Testing Features Error Recovery
Functional Testing Features Built-in Functions
Functional Testing Features Batch Mode Testing


Performance Testing
Load Testing Load Test Recorder
Performance Testing Bandwidth Simulation
Performance Testing DB & Server Monitors
Performance Testing Session Data Handling
Performance Testing Distributed Load Testing
Performance Testing Realistic Load
Performance Testing Detailed Reports

Web Services Testing
Web Services Testing Auto-generated Scripts
Web Services Testing Complex Data/Arrays
Web Services Testing Multiple Binding
Web Services Testing Attachment Support
Web Services Testing Data-driven Testing
Web Services Testing Powerful Validation
Web Services Testing Realistic Load Testing

software testing tools

Load and Performance Test Tools
Java Test Tools
Link Checkers
HTML Validators
Free On-the-Web HTML Validators and Link Checkers
PERL and C Programs for Validating and Checking
Web Functional/Regression Test Tools
Web Site Security Test Tools
External Site Monitoring Services
Web Site Management Tools
Log Analysis Tools
Other Web Test Tools

QA Tester Certifications

QA Tester Certifications

* Certification Comparisons
* American Society for Quality Certified Software Quality Engineer (CSQE)
* American Socity for Quality Quality Improvement Associate (CQIA)
* American Socity for Quality Six Sigma Black Belt Certification (SSBB)
* British Computer Society Information Systems Examinations Board (ISEB) qualification in Software Testing
* International Software Quality Institute ISTQB Certified Tester. The ISTQB is the umbrella organization for the national testing boards, which have already been established in many countries across Europe and around the world.
* Mercury Tools certification
* Quality Assurance Institute Certified Software Quality Analyst (CSQA)
* Rational Function and Performance tester certification
* Segue Tools certification