CSC/ECE 517 Fall 2011/ch2 2e gp: Difference between revisions
Line 5: | Line 5: | ||
__TOC__ | __TOC__ | ||
= Introduction = | = Introduction = | ||
No code is perfect from the word go! Testing plays an important role in System Development Life Cycle. During testing, we follow a taxonomic procedure to uncover defects at various stages. | |||
There are a lot of testing tools that are available for [http://en.wikipedia.org/wiki/Ruby Ruby language], they have different features and can be applied on different platforms. Here is a brief introduction and feature comparisons of popular testing frameworks. [EDIT NEEDED] | There are a lot of testing tools that are available for [http://en.wikipedia.org/wiki/Ruby Ruby language], they have different features and can be applied on different platforms. Here is a brief introduction and feature comparisons of popular testing frameworks. [EDIT NEEDED] | ||
Revision as of 15:42, 17 September 2011
Testing Frameworks for Ruby
This page serves as a knowledge source for understanding the different Testing Frameworks available for Ruby.
Introduction
No code is perfect from the word go! Testing plays an important role in System Development Life Cycle. During testing, we follow a taxonomic procedure to uncover defects at various stages. There are a lot of testing tools that are available for Ruby language, they have different features and can be applied on different platforms. Here is a brief introduction and feature comparisons of popular testing frameworks. [EDIT NEEDED]
Unit Testing
Unit Testing is a method by which we can isolate and test a unit functionality of the program, typically individual methods during and long after the code is written.
Test::Unit
The in-built, ready to use unit testing mechanism for Ruby is called Test::Unit.It belongs to the XUnit family unit testing framework. It has a setup method for initialization, a teardown method for cleanup and the actual test methods itself. The tests are bundled separately in a test class in the code it is aimed to test.
Assertions
We can use Test::Unit to make assertions. The test is successful if the assertion is true and fails if the assertion is false.
assert( boolean, [message] ) | True if boolean |
assert_equal( expected, actual, [message] ) assert_not_equal( expected, actual, [message] ) |
True if expected == actual |
assert_raise( Exception,... ) {block} assert_nothing_raised( Exception,...) {block} |
True if the block raises (or doesn't) one of the listed exceptions. |