Smolder Introduction

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

1 comments

Comments 1 - 1 of 1 previous next Post a comment

  • + guest8c1136 guest8c1136 3 years ago
    Thanks Michael - This is an *excellent* software tool fo r distributed development on large projects.
Post a comment
Embed Video
Edit your comment Cancel

1 Favorite & 1 Group

Smolder Introduction - Presentation Transcript

  1. Bring Your Smoke Tests to Life Michael Peters (mpeters@plusthree.com) http://sourceforge.net/projects/smolder
  2. Problems
    • Large and long running test suites?
    • Code changes without test runs?
    • Multiple languages
        • How do you bring them all together?
    • Project managers need to see pretty graphs?
  3. Origins
    • 5460 tests
    • 28 minutes
    • 5 different dev platforms
    PlusThree and PlunkIT
  4. Origins
    • Automated build and test server
        • emailed results every morning
          • always
          • huge (510k of HTML)
          • developers had no control
    PlusThree and PlunkIT
  5. Origins PlusThree and Arcos
    • Several variations on test runs
    • 15,000+ tests
    • 40+ minutes
    • It was annoying and wasteful
  6. Origins
    • Lot's of ideas from Pugs smoke server
    • Developers customize
        • Email frequency
        • Email format
        • Raw data
    • Tests can be commented, categorized and invalidated
    • Trends can be viewed
    • Can host multiple projects
        • public and private
  7. Origins Built With
    • Apache/mod_perl
    • CGI::Application and family
    • Template Toolkit
    • SQLite (or MySQL if you prefer)
    • Prototype.js (lots 'o AJAX)
        • Full reports are lazy loaded
  8. TAP
    • Test Anything Protocol
          • http://search.cpan.org/perldoc?TAP
    • It's what test scripts output
          • Test::Builder, Test::More, etc
  9. TAP 1..5 ok 1 – foo is fine ok 2 – testing bar value not ok 3 – The object isa Frobnicate # this is some useful # comment thing not ok 4 # SKIP Foo::Bar is not installed not ok 5 # TODO future feature
  10. TAP use Test::More (tests => 5) ok($foo, 'foo is fine'); is($bar, 'right', 'testing bar value'); isa_ok($bar, 'Frobnicate'); diag(“this is some useful comment thing”); SKIP: { skip('Foo::Bar is not installed' 1); ok($foo->bar, 'has a bar'); } TODO: { local $TODO = 'future feature'; ok($foo->feature, 'some feature'); }
  11. TAP
    • Started in Perl-land
        • language-agnostic
          • C
          • PHP
          • Python
          • Java
          • Javascript
          • Parrot
  12. TAP
    • A single archive file (currently Tar)
    • One file for each TAP stream
    • A YAML file containing meta information about the test run
        • Order
        • Start and stop times
        • Future expansion
    TAP Archives
  13. Using
    • How often?
      • Every checkin?
      • Periodically (every hour) ?
    Automated Tests
  14. Using
    • Every Checkin
        • SCM and build/test on same server
        • checkin-hook script
          • setup environment/services
          • use TestRunner::Multi (module by Dave Rolsky)
    Automated Tests
  15. Using
    • Every Hour
        • cron job
          • setup environment/services
          • Use TestRunner::Multi
    Automated Tests
  16. Future
    • RSS/Atom feeds in addition to email
    • Better integration with TestRunner::Multi
    Upcoming Features
  17. Future
    • Code coverage reports and trends
    • ???

+ mpetersmpeters, 3 years ago

custom

1852 views, 1 favs, 0 embeds more stats

A quick intro to Smolder.

More info about this document

© All Rights Reserved

Go to text version

  • Total Views 1852
    • 1852 on SlideShare
    • 0 from embeds
  • Comments 1
  • Favorites 1
  • Downloads 39
Most viewed embeds

more

All embeds

less

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

Cancel
File a copyright complaint
Having problems? Go to our helpdesk?

Categories

Groups / Events