Test Environments for Modern Web Apps


This month, William Lindley ( blog) will talk about writing a test harness for modern Perl programs using Test::More, Test::Mojo for the API, and DBIx::TempDB for the database.

Building, testing, and deploying actual systems is more complex than merely writing a program. Real testing often needs to be done against databases of known large or problematic datasets. A test environment cannot affect production data. Staging even minor changes, so we can preview and find errors before moving to production servers, can prevent expensive errors. The "best practices" in this field are relatively new and still changing, and we look at the first steps from "I built this mockup last night" by building the test suite for a simple database-driven file-upload service with Mojolicious.

William Lindley has been hacking computers (in the good sense) since 1977, a database advocate since dBase II and PostgreSQL-predecessor Ingres in the 1980s, a Perl monger since 1994, and a free-software promoter since first getting Linux to run XWindows in 1995.

If time permits, Doug Bell (preaction) () will show a simple app to mock JSON REST APIs for testing using Mojolicious.

RSVP for the meeting on the Chicago.PM Meetup

Travis-CI for Perl and Introduction to Rex


This month, Doug Bell will be giving two short talks.

One talk is about using Travis-CI, a free continuous integration testing service, for Perl projects, and maximizing Travis's effectiveness. This talk introduces Graham Knop's Perl Travis Helpers, gets you started using Travis-CI, and shows how to configure Travis to cover edge cases like very old Perls and missing optional modules/features (using Devel::Hide).

The other talk is an introduction to Rex, a Perl-based server configuration management system. This talk was given informally at an office hours last year, but now it's a real talk with real slides! This talk introduces Rex, goes through simple configuration and tasks, and touches on some of the more powerful features of Rex such as the CMDB (Configuration Management Database).

RSVP on the Meetup

EDIT: Slides are now available for both talks on the Chicago.PM talks page:

The Perl Test Ecosystem


This month, Eric Johnson (kablamo) will be giving a talk exploring the Perl testing ecosystem, including how to write tests in Perl, using prove to run tests, TAP (the Test-Anything Protocol), and an exploration of CPAN test libraries including:

Slides are available on kablamo.org

RSVP on the Chicago.PM Meetup page