Perl Testing: A Developer's Notebook

Overview

Is there any sexier topic in software development than software testing? That is, besides game programming, 3D graphics, audio, high-performance clustering, cool websites, et cetera? Okay, so software testing is low on the list. And that's unfortunate, because good software testing can increase your productivity, improve your designs, raise your quality, ease your maintenance burdens, and help to satisfy your customers, coworkers, and managers.

Perl has a strong history of ...

See more details below
Other sellers (Paperback)
  • All (11) from $7.99   
  • New (5) from $16.38   
  • Used (6) from $7.99   
Perl Testing: A Developer's Notebook: A Developer's Notebook

Available on NOOK devices and apps  
  • NOOK Devices
  • NOOK HD/HD+ Tablet
  • NOOK
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac
  • NOOK Study
  • NOOK for Web

Want a NOOK? Explore Now

NOOK Book (eBook)
$13.49
BN.com price
(Save 43%)$23.99 List Price

Overview

Is there any sexier topic in software development than software testing? That is, besides game programming, 3D graphics, audio, high-performance clustering, cool websites, et cetera? Okay, so software testing is low on the list. And that's unfortunate, because good software testing can increase your productivity, improve your designs, raise your quality, ease your maintenance burdens, and help to satisfy your customers, coworkers, and managers.

Perl has a strong history of automated tests. A very early release of Perl 1.0 included a comprehensive test suite, and it's only improved from there. Learning how Perl's test tools work and how to put them together to solve all sorts of previously intractable problems can make you a better programmer in general. Besides, it's easy to use the Perl tools described to handle all sorts of testing problems that you may encounter, even in other languages.

Like all titles in O'Reilly's Developer's Notebook series, this "all lab, no lecture" book skips the boring prose and focuses instead on a series of exercises that speak to you instead of at you.

Perl Testing: A Developer's Notebook will help you dive right in and:

  • Write basic Perl tests with ease and interpret the results
  • Apply special techniques and modules to improve your tests
  • Bundle test suites along with projects
  • Test databases and their data
  • Test websites and web projects
  • Use the "Test Anything Protocol" which tests projects written in languages other than Perl

With today's increased workloads and short development cycles, unit tests are more vital to building robust, high-quality software than ever before. Once mastered, these lessons will help you ensure low-level code correctness, reduce software development cycle time, and ease maintenance burdens.

You don't have to be a die-hard free and open source software developer who lives, breathes, and dreams Perl to use this book. You just have to want to do your job a little bit better.

Read More Show Less

Product Details

  • ISBN-13: 9780596100926
  • Publisher: O'Reilly Media, Incorporated
  • Publication date: 8/14/2005
  • Edition number: 1
  • Pages: 202
  • Product dimensions: 7.00 (w) x 9.19 (h) x 0.55 (d)

Meet the Author

Ian Langworth (http://langworth.com/) has been writing Perl for years and actively involved in the community since 2003.
He has contributed a handful of modules to the CPAN, most of which are Kwiki-related. He has spoken at Perl-related conferences as LISA and YAPC. Ian is also the author surprisingly widespread utility, Cadubi, which is packaged for many free operating systems.

Ian is currently studying Computer Science and Cognitive
Psychology at Northeastern University. Whilst pursuing a degree, he's participating in an volunteer systems administration group and working toward making higher code quality and robustness an easier goal to achieve.

He currently resides in Boston, Massachusetts where he participates in the local Boston Perl Mongers group and lives precariously close to Fenway Park.

chromatic is the technical editor of the O'Reilly Network, covering open source, Linux, development, and dynamic languages. He is also the author of the Extreme Programming Pocket Guide and Running Weblogs with Slash, as well as the editor of BSD Hacks and Gaming Hacks. He is the original author of Test::Builder, the foundation for most modern testing modules in Perl 5, and has contributed many of the tests for core Perl. He has given tutorials and presentations at several Perl conferences, including OSCON, and often writes for Perl.com, which he also edits. He lives just west of Portland, Oregon, with two cats, a creek in his backyard, and, as you may have guessed, several unfinished projects.

Read More Show Less

Table of Contents

The Developer’s Notebook Series;
Notebooks Are...;
Notebooks Aren’t...;
Organization;
Preface;
What This Book Covers;
Conventions Used in This Book;
Using Code Examples;
Safari Enabled;
Comments and Questions;
Acknowledgments;
Chapter 1: Beginning Testing;
1.1 Installing Test Modules;
1.2 Running Tests;
1.3 Interpreting Test Results;
1.4 Writing Your First Test;
1.5 Loading Modules;
1.6 Improving Test Comparisons;
Chapter 2: Writing Tests;
2.1 Skipping Tests;
2.2 Skipping All Tests;
2.3 Marking Tests as TODO;
2.4 Simple Data Structure Equality;
2.5 Data Composition;
2.6 Testing Warnings;
2.7 Testing Exceptions;
Chapter 3: Managing Tests;
3.1 Organizing Tests;
3.2 Checking Your Coverage;
3.3 Writing a Testing Library;
3.4 Testing a Testing Library;
3.5 Writing a Testing Harness;
3.6 Testing Across the Network;
3.7 Automating Test Runs;
Chapter 4: Distributing Your Tests (and Code);
4.1 Testing POD Files;
4.2 Testing Documentation Coverage;
4.3 Distribution Signatures;
4.4 Testing Entire Distributions;
4.5 Letting the User Decide;
4.6 Letting the User Decide (Continued);
4.7 Bundling Tests with Modules;
4.8 Collecting Test Results;
4.9 Validating Kwalitee;
Chapter 5: Testing Untestable Code;
5.1 Overriding Built-ins;
5.2 Mocking Modules;
5.3 Mocking Objects;
5.4 Partially Mocking Objects;
5.5 Overriding Live Code;
5.6 Overriding Operators Everywhere;
Chapter 6: Testing Databases;
6.1 Shipping Test Databases;
6.2 Testing Database Data;
6.3 Using Temporary Databases;
6.4 Mocking Databases;
Chapter 7: Testing Web Sites;
7.1 Testing Your Backend;
7.2 Testing Your Frontend;
7.3 Record and Play Back Browsing Sessions;
7.4 Testing the Validity of HTML;
7.5 Running Your Own Apache Server;
7.6 Testing with Apache-Test;
7.7 Distributing Modules with Apache-Test;
Chapter 8: Unit Testing with Test::Class;
8.1 Writing Test Cases;
8.2 Creating Test Fixtures;
8.3 Inheriting Tests;
8.4 Skipping Tests with Test::Class;
8.5 Marking Tests as TODO with Test::Class;
Chapter 9: Testing Everything Else;
9.1 Writing Testable Programs;
9.2 Testing Programs;
9.3 Testing Interactive Programs;
9.4 Testing Shared Libraries;
Colophon;

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing 1 Customer Reviews
  • Anonymous

    Posted September 3, 2005

    DIVING FOR PERL

    Learning how Perl's test tools work and how to put them together to solve all sorts of previously intractable problems can make you a better programmer in general. Authors Ian Langworth and chromatic have done an outstanding job of putting together a book that shows you how easy it is to use the Perl tools described therein, to handle all sorts of testing problems you might encounter. Langworth and chromatic begin by explaining everything you need to start writing and running tests, including how to install testing modules, how to understand test results, and the basic test functions you'll use in every test. Next, the authors demonstrate further test techniques and modules. Then, they explain how to take advantage of the basic testing tools, so that you can customize them for your environment and projects. The authors continue by covering some of the issues you'll face when you want to distribute your project, especially the issues of non-code portions of your project. In addition, the authors next recommend another way of thinking that allows you to substitute testable code for code that otherwise looks untestable. They also focus on simple and effective techniques to verifying that your code does what it should. The authors next explore an alternative web application design strategy that makes projects easier to maintain and easier to test as well as, how to test them. Next, the authors discuss a Perl testing framework that allows good code reuse within object-oriented project tests and yet works within the familiar Perl testing libraries. Finally, they suggest a few ways to use everything you've learned to test other projects written in other languages. With the preceding in mind, the authors have done an excellent job in this book of showing you how to go forth and improve software quality worldwide. At the end of the day, after reading this book, you'll want to do your job of testing a little bit better.

    1 out of 1 people found this review helpful.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing 1 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)