Softpedia
 


LINUX CATEGORIES:



GLOBAL PAGES >>
NEWS ARCHIVE >>
SOFTPEDIA REVIEWS >>
MEET THE EDITORS >>
WEEK'S BEST
  • Linux Kernel 3.9.3 / 3....
  • LibreOffice 3.6.6 / 4.0.3
  • MPlayer 1.1.1
  • systemd 204
  • Arch Linux 2013.05.01
  • Blender 2.67
  • KDE Software Compilatio...
  • CrunchBang Linux Stable...
  • Elementary OS 0.1 / 0.2...
  • SystemRescueCd 3.6.0
  • Home > Linux > Programming > Perl Modules

    Test::Extreme 0.12

    Download button

    No screenshots available
    Downloads: 351  View global page NEW!  Tell us about an update
    User Rating:
    Rated by:
    NOT RATED
    0 user(s)
    Developer:

    License / Price:

    Last Updated:

    Category:
    Asim Jalis | More programs
    Perl Artistic License / FREE
    June 8th, 2007, 17:05 GMT
    ROOT / Programming / Perl Modules

     Read user reviews (0)  Refer to a friend  Subscribe

    Test::Extreme description

    A perlish unit testing framework.

    Test::Extreme is a perlish unit testing framework.

    SYNOPSIS

    # In ModuleOne.pm combine unit tests with code

    package ModuleOne;
    use Test::Extreme;
    sub foo { return 23 };
    sub test_foo { assert_equals foo, 23 }

    # at the end of the module

    run_tests 'ModuleOne' if $0 =~ /ModuleOne.pm$/;

    # To run the tests in this module on the command line type

    perl ModuleOne.pm

    # If you have tests in several modules (say in ModuleOne.pm,
    # ModuleTwo.pm and ModuleThree.pm, create test.pl containing
    # precisely the following:

    use ModuleOne;
    use ModuleTwo;
    use ModuleThree;

    run_tests 'ModuleOne', 'ModuleTwo', 'ModuleThree',

    # Then run these tests on the command line with

    perl test.pl

    # If you prefer to get Perl's classic "ok/not ok" output use
    # replace run_tests with run_tests_as_script in all of the
    # above


    # Also take a look at Test/Extreme.pm which includes its own
    # unit tests for how to instrument a module with unit tests

    Test::Extreme is a perlish port of the xUnit testing
    framework. It is in the spirit of JUnit, the unit testing
    framework for Java, by Kent Beck and Erich Gamma. Instead of
    porting the implementation of JUnit we have ported its spirit
    to Perl.

    The target market for this module is perlish people
    everywhere who value laziness above all else.

    Test::Extreme is especially written so that it can be easily
    and concisely used from Perl programs without turning them
    into Java and without inducing object-oriented nightmares in
    innocent Perl programmers. It has a shallow learning curve.
    The goal is to adopt the unit testing idea minus the OO
    cruft, and to make the world a better place by promoting the
    virtues of laziness, impatience and hubris.

    You test a given unit (a script, a module, whatever) by using
    Test::Extreme, which exports the following routines into your
    namespace:

    assert $x - $x is true
    assert_true $x - $x is true
    assert_false $x - $x is not true
    assert_passed - the last eval did not die ($@ eq "")
    assert_failed - the last eval caused a die ($@ ne "")
    assert_some $x - $x is true
    assert_none - $x is false
    assert_equals $x, $y - recursively tests arrayrefs, hashrefs
    and strings to ensure they have the same
    contents
    assert_contains $string, $list
    - $list contains $string assert_subset
    $element_list, $list - $element_list is
    a subset of $list (both are arrayrefs)
    assert_is_array $x - $x is an arrayref
    assert_is_hash $x - $x is a hashref
    assert_is_string $x - $x is a scalar
    assert_size N, $list - the arrayref contains N elements
    assert_keys ['k1', 'k2'], $hash
    - $hash contains k1, k2 as keys

    run_tests_as_script - run all tests in package main and emit
    Perl's classic "ok/not ok" style output

    run_tests_as_script NS1, NS2, ...
    - run all tests in package main, NS1,
    NS2, and so on and emit Perl's classic
    "ok/not ok" style output

    run_tests - run all tests in package main

    run_tests NS1, NS2, ...
    - run all tests in package main, NS1,
    NS2, and so on


    For an example on how to use these assert take a look at Test/Extreme.pm which includes it own unit tests and illustrates different ways of using these asserts.

    The function run_tests finds all functions that start with the word test (preceded by zero or more underscores) and runs them one at a time. It looks in the 'main' namespace by default and also looks in any namespaces passed to it as arguments.

    Running the tests generates a status line (a "." for every successful test run, or an "F" for any failed test run), a summary result line ("OK" or "FAILURES!!!") and zero or more lines containing detailed error messages for any failed
    tests.

    To get Perl's classic "ok/not ok" style output (which is useful for writing test scripts) use run_tests_as_script instead of run_tests.

    Product's homepage

    Requirements:

    · Perl

      


    TAGS:

    unit testing | testing framework | Perl module | Test | unit | testing

    Go to top

    WindowsGamesDriversMacLinuxScriptsMobileHandheldNews

    SUBMIT PROGRAM   |   ADVERTISE   |   GET HELP   |   SEND US FEEDBACK   |   RSS FEEDS   |   UPDATE YOUR SOFTWARE   |   ROMANIAN FORUM