Your SlideShare is downloading. ×
Doing A Bradbury With Heckle
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Doing A Bradbury With Heckle

417

Published on

A description of heckle and possible improvements.

A description of heckle and possible improvements.

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
417
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Doing a Bradbury with Heckle
    • Andrew Grimm
    • 2. University of New (South Wales)
    • 3. @andrewjgrimm
    • 4. http://andrewjgrimm.wordpress.com
  • 5. What's Heckle?
    • Mutation tester
    • 6. Makes changes to production code- mutations
    • 7. Your unit tests should fail when changes are made – killing mutants
  • 8. Heckle could be faster
    • Normally, each mutation requires the running of the specified test suite
    • 9. Number of mutations proportional to size of codebase
    • 10. Number of tests proportional to size of codebase
    • 11. Therefore heckle time is ~ O(n^2)
  • 12. Bradbury
    • Project name based after gold medal winning skater Steven Bradbury
    • 13. Tells test/unit to stop running once each mutation has triggered a failing test
    • 14. Should reduce running time
  • 15. How test runs are stopped
    • Test::Unit allows you to add listeners triggered by updates, including failed tests
    • 16. I've added a proc containing a request to throw a symbol
    • 17. The calling of the test suite for a specific mutation occurs within a catch block
  • 18. Future plans
    • Sort tests so that those likely to fail go first (the sooner you kill mutants, the sooner you can deal with the next one)
    • 19. Random number seeding, to enable reproducible mutant creation
  • 20. More future plans
    • Turn resistance to mutation into a percentage value
    • 21. Add rcov-style code coloring
      • Color the method based on percentage resistance to mutation
      • 22. Or highlight particular portions vulnerable to mutation
      • 23. Make available to other code metric software
  • 24. Rejected project names
    • Too hard to spell
      • (Jack) Kevorkian – euthanasia doctor
      • 25. (Philip) Nitschke – euthanasia doctor
    • Too popular a name
      • Governator
      • 26. Buster (from MythBusters)

×