Test-driven development with pFUnit 3.0

Date and Time: 
2014 April 10th - PM
2014 April 11th - FULL DAY
CG - room TBD
Thomas Clune

This tutorial will introduce Fortran developers to unit-testing and test-driven development (TDD)  using pFUnit.   As with other unit-testing frameworks, pFUnit, simplifies the process of writing, collecting, and executing tests while providing clear diagnostic messages for failing tests.   pFUnit specifically targets the development of scientific/technical software written in Fortran and includes customized features such as:   assertions for  multi-dimensional arrays, distributed (MPI) and thread-based (OpenMP) parallellism, and flexible parameterized tests.

These sessions will include numerous examples and hands-on exercises that gradually build  in complexity. Attendees are expected to have working knowledge of F90, but familiarity with  object-oriented syntax in F2003 and MPI will be of benefit for the more advanced examples.   By the end of the tutorial the audience should feel comfortable in applying pFUnit within their own development environment.


  • Session I - Basic
    Overview of pFUnit
    Building/installing pFUnit
    Basic syntax
    The pFUnit preprocessor - making it easy

  • Session II - Advanced
    User-defined subclasses
    Parameterized tests
    Overview of TDD
    Test-Driven Development using pFUnit by Example

  • Session III - BYOC  (Bring your own code)
    Supplementary exercises will also be available
Speaker Description: 

Thomas Clune, Ph.D., Chief, Software Systems Support Office, NASA Goddard Space Flight Center, and a principle developer of pFUnit.

Event Category: