CSC/ECE 517 Fall 2011/ch2 2e ad: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 43: Line 43:
|-
|-
! Testing Framework
! Testing Framework
! #|Repository model
! #Released Date|Released Date
! #Concurrency model|Concurrency model
! #Released Version|Released Version
! #Programming Languages|Programming Languages
! #Current Version|Current Version
! #Scope of Change|Scope of Change
! #Testing Supported|Testing Type Supported
! #Atomic commits|Atomic commits
! #Install Command|Install Command
! #File Renames|File Renames
! Documentation Support Available
! #Interactive Commits|Interactive Commits
! #Partial Checkout/clone|Partial Checkout/clone
! Platforms supported
|-
|-
! RCS
! Test:Unit
| Set of files
| 03-20-2008
| Merge
| 1.2.3
|  C
| 2.3.0
|  File
| TDD,Mocking
|  No
| gem install test-unit
|  No
| Yes [http://rubyforge.org/projects/test-unit/]
|  No
|  Yes
| Unix-like
|-
! CVS
| Client-Server
| Merge
| C
| File
|  No
| No
|  No
Yes  
| Unix-like, Microsoft Windows|Windows, Mac OS X
|}
|}


===Examples===  
===Examples===  

Revision as of 17:46, 19 September 2011

Testing frameworks for Ruby

Introduction

This is an introduction to the subject.

Definition

Test Driven Development (TDD)

Behavior Driven Development(BDD)

Mocking in Testing

Benchmarking in Testing

Testing Framework

Testing Framework Evolution

Explain here how testing in ruby went from regular Test:unit testing to BDD testing.

TDD vs BDD

Give high level example how they differ from each other.

Ruby Testing Frameworks

Compared to five years ago the number of testing framework available for ruby has increased rapidly. Selecting a perfect testing framework for a particular project has become harder.

Overview of testing framework

Selection of testing framework for ruby projects depends on factors like what are we trying to accomplish TDD or BDD, is GUI testing included, is acceptance testing required, do we have to merge legacy ruby test code with new testing framework. Altough GUI testing and acceptance testing are out of scope for this wiki we have made attempt to cover them in some details at the end of this wiki page. Meanwhile, below is the detailed explanation of five most commonly used unit testing framework.

Test:Unit

This testing framework is a base testing framework that is integrated inside ruby. The packages for this testing framework can be downloaded as a gem. The first version gem for this testing framework was released on 20th march 2008.

Shoulda

RSpec

Riot

Mini

Pros And Cons of Ruby Testing Frameworks


Testing Framework Released Date Released Version Current Version Testing Type Supported Install Command Documentation Support Available
Test:Unit 03-20-2008 1.2.3 2.3.0 TDD,Mocking gem install test-unit Yes [1]

Examples

Examples go here [2]

Actual Code being tested (Intro of functionality)

Test:Unit testing code

Shoulda testing code

RSpec testing code

Riot testing code

Mini testing code

Example code goes here

Additional Testing Framework

UI Testing Framework

Context

Win32-AutoGUI

Acceptance testing

Cucumber

Capybara

References


Note

There are many testing frameworks for Rails, but for this topic, I would like you to concentrate on testing frameworks for Ruby itself. Look up information on these frameworks, and describe their evolution.