QA Test Automation using Perl and integration with other languages

Below you'll find the description of the training offered to Perl developers and QA departments by Gabor Szabo.

In addition to this three or four day long training on how to use Perl in test automation I am also offering on-site consulting service to kick-start the test automation system by setting up the framework and coaching the developers.

Training: QA Test Automation using Perl

Perl has been used for years in QA for various tasks such as preparing configuration files before the tests run and parsing log files after the test. In the past few years lots of extensions have been added to Perl. Now, in addition to the above tasks Perl can already be used in all parts of the automatic test environment.

Audience:

  • Perl developers who need to write tests for their applications.
  • QA engineers with a background of Perl who need to write automated test to any application.

Objectives:

  • Be able to write unit, integration and system tests in Perl.
  • Use the testing frameworks that come with Perl.
  • Overview how Perl can be used in automating tests for Quality Assurance.
  • Apply Perl in various fields of testing such as Web, Networking, Command line (CLI) and even desktop applications (GUI).

Course format

The regular length of the course is 32 academic hours including about 50% time for hands-on exercises. It is usually given in 4 days (9:00-17:00 or 10:00-18:00) but it can be spread to a longer period.

Prerequisites:

At least 6 month experience as a Perl programmer or taking an introductory Perl course prior to this class. (We can arrange to offer those classes as well, if needed.)

Content

  • First we'll learn about the basic tools of testing and the test frameworks available in Perl by looking at unit-tests of Perl modules.
  • Then, we'll expand our set of tools in order to test other kind of applications.
  • We'll look at testing of

  • Web applications

  • Command line applications (CLI)
  • Network Appliances
  • and even Desktop applications with a GUI.

  • The test will cover unit, integration, system and even acceptance testing with both white- and black-box testing in mind.

  • Topics covered in the training include an introduction to the unit testing framework of Perl using Test::Simple, Test::More and the Test::Builder ecosystem.

After the training attendees will be able to setup their own testing framework and start writing unit tests to their applications. They will also be able to develop their own specific test modules similar to those found in the Test:: name space on CPAN. Those who already have unit testing in their application will be able to extend it with the solid knowledge they get on how and why things work the way they work in TAP.

Detailed Syllabus:

  • Introduction to testing, why, when, who and how ?
  • Understanding the basic tasks of the QA engineer
  • Introduction to TAP - the Test Anything Protocol
  • Testing tools in Perl for testing Perl Modules (Test::Simple, Test::More)
  • Common reporting framework (Test::Harness, Smolder)
  • Extending the testing framework (Test::Builder)
  • Setting up continuous integration (smoke testing)
  • Command Line Interface applications
  • Testing network devices with CLI interface
  • Testing Web application
  • Web 2.0 application testing
  • Database testing
  • Testing file-systems
  • Microsoft Windows GUI applications
  • X-Windows testing
  • A few words about XP - Extreme Programming
  • Building random regression testing tool
  • Integrating with PHP, Python and Ruby unit tests
  • Integrating with JavaScript testing

About Gabor Szabo

Gabor - born in Hungary and living in Israel - has been programming since high-school. He has been using Perl since 1995 and teaching it both in Israel and overseas since 2000.

He is also providing consulting in Perl development with a focus on test and build automation to companies such as Cisco and Checkpoint.

Gabor is a CPAN author and has contributed tests to many other CPAN modules. He runs the Perl Maven site, and the Perl Weekly newsletter.

He has been giving talks at YAPC::EU and YAPC::NA conferences since 2002.

For his work in the Perl community, Gabor has received the White Camel award in 2008.