CSC/ECE 517 Fall 2009/wiki1b 12 testFrmwk: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
=Testing frameworks for object-oriented languages=
=Testing frameworks for object-oriented languages=
==Groovy==
Groovy is a dynamic language built to run on Java Virtual machine. This language has additional features that are inspired by languages like python, Ruby and smalltalk. Groovy simplifies testing by providing unit test (using JUnit) and mock frameworks as part of the built in features.
[http://code.google.com/p/testngroove Test'N'Groove] - 'Test and Groove' framework is the integration of Groovy and TestNG frameworks.
[Groovy Mocks http://groovy.codehaus.org/Groovy+Mocks] - This framework is built in with Groovy and provides excellent support for mocking alternatives while testing Groovy code
[http://gmock.org Gmock] - This is a mocking framework for Groovy. Simple syntax of this framework makes it popular as it makes the tests more readable and concise
[easyb http://www.easyb.org] - This is a behavior driven development framework that can be used to test Groovy
[http://code.google.com/p/spock spock] - Spock is a testing and specification framework for Groovy applications also. This is popular as it has highly expressive specification language and it combines the best features of other tools like JUnit, jMock, and RSPec
==LISP==
[http://www.ancar.org/CLUnit/docs/CLUnit.html CLUnit] is a unit test tool for defining and running unit tests for common LISP language
[http://common-lisp.net/project/lift LIFT] is another framework for testing LISP based applications. LIFT supports interactive testing and is inspired by SUnit and JUnit.
[http://www.cs.northwestern.edu/academics/courses/325/readings/lisp-unit.html LISPUnit] is a popular framework designed for beginners of LISP programming and has common LISP library that supports unit testing
[http://common-lisp.net/project/bese/FiveAM.html FiveAM] is a unit testing framework similar to LISP and does hierarchical, composable test suites
[http://common-lisp.net/project/stefil Stefil] features a more interactive approach to testing as it provides report on test failures and the conditions that caused the failure
==Objective C==
[http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/ObjectiveC/Introduction/introObjectiveC.html Objective C] is designed to provide C language , the full object oriented programming capabilities based on Smalltalk style messaging.
[http://sente.epfl.ch/software/ocunit OCUnit] is a XUnit style testing framework for testing Objective C language based applications.
[ObjcUnit http://oops.se/objcunit] is another testing framework based on JUnit, adapted for Objective C
[http://wincent.com/a/products/wotest WOTest] is an unit testing framework for Objective C which integrates fully with XCode
==PHP==
[http://phpunit.sourceforge.net PHPUnit] is a unit testing framework for PHP programming language based on JUnit framework
[http://www.simpletest.org SimpleTest] is an unit testing framework for PHP programming language and it supports mock objects which is used to regress the web-applications. This framework is based on JUnit/PHPUnit
[http://code.google.com/p/snaptest SnapTest] is a unit testing framework compliant with JUnit type of test harness and also provides test output that is complaint with TAP
==PERL==
Perl is a high-level, general-purpose, interpreted, dynamic programming language well known for its text processing capabilities. Perl is inspired by AWK, Smalltalk, LISP, C, C++, Unix Shell etc.
[http://search.cpan.org/perldoc/TAP TAP] - TAP stands for Test Anything Protocol. This is used to allow communication between unit tests and any automated testing framework
[http://search.cpan.org/perldoc/Test::Harness Test::Harness] -  This is a standard test runner for PERL which leverages TAP parser for running various tests
[http://search.cpan.org/perldoc/Test::More Test::More] - Another testing framework that is famous for the testing utilities
[http://search.cpan.org/perldoc/Test::Class Test::Class] - This framework provides a simple way to create classes and objects for testing in the xUnit/JUnit Style
[http://search.cpan.org/perldoc/Test::Builder Test::Builder] - A module for making more testing modules
[http://search.cpan.org/perldoc/Test::Unit Test::Unit] (a.k.a. [http://perlunit.sourceforge.net/ PerlUnit]) - This framework supports unit testing in an object oriented development paradigm. This is derived from JUnit
[http://search.cpan.org/perldoc/Test::DBUnit Test::DBUnit] - Another xUnit based testing framework for testing database modules
[http://search.cpan.org/perldoc/Test::Able Test::Able] - This is an xUnit style testing framework inspired by Test::Class with
[http://search.cpan.org/perldoc/Moose Moose] . This framework was created to overcome the limitations of Test::Class and leverage the functions of Moose.
[http://www.c2.com/cgi/wiki?LectroTest LectroTest] - This is an automatic, specification-based testing tool for Perl. It is modeled after the QuickCheck module for the Haskell programming language.
[http://www.c2.com/cgi/wiki?PerlActor PerlActor] - This is a simple automated executable acceptance test framework for Perl
http://langworth.com/pub/perl_test_refcard.pdf - List of testing modules for PERL
==Scala==
Scala stands for "Scalable Language". Scala is a programming language that is designed to integrate the features of Object-orient programming and functional programming. Scala runs on JVM and is compatible with existing java programs.
[http://www.artima.com/scalatest/ ScalaTest] - is a traditional xUnit style testing framework
[http://code.google.com/p/scalacheck/ ScalaCheck], a library similar to Haskell's [[QuickCheck]].  A powerful tool for automatic unit testing of Scala and Java programs.
[http://code.google.com/p/specs/ Specs], a [[Behavior driven development]] library for Scala
[http://rehersal.sourceforge.net/ Rehersal], another unit testing framework for Scala  intended as an easier-to-use replacement for SUnit in the standard library
[http://code.google.com/p/scunit/ ScUnit], a unit testing framework based on several Java testing and mocking frameworks like JUnit, TestNG,JBehave, EasyMock
[[JUnit]] can also be used readily with Scala code
The built-in Scala library '''SUnit''' is deprecated and will be removed in version 2.8.0, see [http://www.scala-lang.org/docu/files/api/scala/testing/SUnit$object.html SUnit] documentation.
==Smalltalk==
Smalltalk is an object oriented, dynamically typed language and is often considered as a pioneer for many other object oriented languages like Java, Python, Ruby etc.
[http://en.wikipedia.org/wiki/SUnit SUnit] - Unit Testing framework for Smalltalk. It is the original source of the xUnit design.
==External References==
http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks
http://www.c2.com/cgi/wiki?TestingFramework
http://groovy.codehaus.org/
http://www.xprogramming.com/testfram.htm
http://en.wikipedia.org/wiki/Objective-C
http://www.scala-lang.org/
http://scala.sygneca.com/
http://rehersal.sourceforge.net/

Revision as of 02:42, 21 September 2009

Testing frameworks for object-oriented languages

Groovy

Groovy is a dynamic language built to run on Java Virtual machine. This language has additional features that are inspired by languages like python, Ruby and smalltalk. Groovy simplifies testing by providing unit test (using JUnit) and mock frameworks as part of the built in features.

Test'N'Groove - 'Test and Groove' framework is the integration of Groovy and TestNG frameworks.

[Groovy Mocks http://groovy.codehaus.org/Groovy+Mocks] - This framework is built in with Groovy and provides excellent support for mocking alternatives while testing Groovy code

Gmock - This is a mocking framework for Groovy. Simple syntax of this framework makes it popular as it makes the tests more readable and concise

[easyb http://www.easyb.org] - This is a behavior driven development framework that can be used to test Groovy

spock - Spock is a testing and specification framework for Groovy applications also. This is popular as it has highly expressive specification language and it combines the best features of other tools like JUnit, jMock, and RSPec

LISP

CLUnit is a unit test tool for defining and running unit tests for common LISP language

LIFT is another framework for testing LISP based applications. LIFT supports interactive testing and is inspired by SUnit and JUnit.

LISPUnit is a popular framework designed for beginners of LISP programming and has common LISP library that supports unit testing

FiveAM is a unit testing framework similar to LISP and does hierarchical, composable test suites

Stefil features a more interactive approach to testing as it provides report on test failures and the conditions that caused the failure

Objective C

Objective C is designed to provide C language , the full object oriented programming capabilities based on Smalltalk style messaging.

OCUnit is a XUnit style testing framework for testing Objective C language based applications.

[ObjcUnit http://oops.se/objcunit] is another testing framework based on JUnit, adapted for Objective C

WOTest is an unit testing framework for Objective C which integrates fully with XCode

PHP

PHPUnit is a unit testing framework for PHP programming language based on JUnit framework

SimpleTest is an unit testing framework for PHP programming language and it supports mock objects which is used to regress the web-applications. This framework is based on JUnit/PHPUnit

SnapTest is a unit testing framework compliant with JUnit type of test harness and also provides test output that is complaint with TAP


PERL

Perl is a high-level, general-purpose, interpreted, dynamic programming language well known for its text processing capabilities. Perl is inspired by AWK, Smalltalk, LISP, C, C++, Unix Shell etc.

TAP - TAP stands for Test Anything Protocol. This is used to allow communication between unit tests and any automated testing framework

Test::Harness - This is a standard test runner for PERL which leverages TAP parser for running various tests

Test::More - Another testing framework that is famous for the testing utilities

Test::Class - This framework provides a simple way to create classes and objects for testing in the xUnit/JUnit Style

Test::Builder - A module for making more testing modules

Test::Unit (a.k.a. PerlUnit) - This framework supports unit testing in an object oriented development paradigm. This is derived from JUnit

Test::DBUnit - Another xUnit based testing framework for testing database modules

Test::Able - This is an xUnit style testing framework inspired by Test::Class with

Moose . This framework was created to overcome the limitations of Test::Class and leverage the functions of Moose.

LectroTest - This is an automatic, specification-based testing tool for Perl. It is modeled after the QuickCheck module for the Haskell programming language.

PerlActor - This is a simple automated executable acceptance test framework for Perl

http://langworth.com/pub/perl_test_refcard.pdf - List of testing modules for PERL

Scala

Scala stands for "Scalable Language". Scala is a programming language that is designed to integrate the features of Object-orient programming and functional programming. Scala runs on JVM and is compatible with existing java programs.

ScalaTest - is a traditional xUnit style testing framework

ScalaCheck, a library similar to Haskell's QuickCheck. A powerful tool for automatic unit testing of Scala and Java programs.

Specs, a Behavior driven development library for Scala

Rehersal, another unit testing framework for Scala intended as an easier-to-use replacement for SUnit in the standard library

ScUnit, a unit testing framework based on several Java testing and mocking frameworks like JUnit, TestNG,JBehave, EasyMock

JUnit can also be used readily with Scala code

The built-in Scala library SUnit is deprecated and will be removed in version 2.8.0, see SUnit documentation.

Smalltalk

Smalltalk is an object oriented, dynamically typed language and is often considered as a pioneer for many other object oriented languages like Java, Python, Ruby etc.

SUnit - Unit Testing framework for Smalltalk. It is the original source of the xUnit design.

External References

http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks

http://www.c2.com/cgi/wiki?TestingFramework

http://groovy.codehaus.org/

http://www.xprogramming.com/testfram.htm

http://en.wikipedia.org/wiki/Objective-C

http://www.scala-lang.org/

http://scala.sygneca.com/

http://rehersal.sourceforge.net/