Test Automation using Perl


  • Learn the importance of automated tests
  • Use the Testing frameworks that come with Perl
  • To be capable to write all kinds of unit and integration tests


  • People writing and maintaining Perl scripts, modules, or applications.

Course Format

  • 32 academic hours (usually full 4 days or 8 half-days).
  • About 40% hands-on exercise.


  • At least 6 month experience writing Perl code.



  • Introduction to testing, why, when, who and how?
  • Writing tests manually
  • Simple tests
  • Introduction to TAP - the Test Anything Protocol
  • Testing tools in Perl for testing Perl Modules (Test::Simple, Test::More)
  • Common reporting framework (Test::Harness)
  • Extending the testing framework (Test::Builder)
  • Test file system parsing application
  • Command Line Interface applications
  • Database testing
  • Testing file-systems
  • Testing network devices with CLI interface
  • Testing Web application
  • Testing CGI-based applications
  • Testing PSGI-based applications
  • Testing Database applications
  • Regression testing
  • Testing code that has not been written yet (Mocking)
  • Testing code with 3rd party APIs
  • Writing test to fail
  • Bad input
  • Testing error messages
  • Code Coverage
  • Setting up Continuous Integration
  • Refactoring Perl code
  • TDD - Test Driven Development
  • A few words about XP - Extreme Programming
  • Building random regression testing tool

Let's talk

If you would like to bring this course to your organization, let's talk about it! You can reach me via email at gabor@szabgab.com or you can go ahead and schedule a chat:

Schedule a call