SUnit: latest developments
Upcoming SlideShare
Loading in...5
×
 

SUnit: latest developments

on

  • 52 views

Show Us Your Project, ESUG 2014, Cambridge

Show Us Your Project, ESUG 2014, Cambridge

Statistics

Views

Total Views
52
Views on SlideShare
52
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

SUnit: latest developments SUnit: latest developments Presentation Transcript

  • 1 Welcome August 19, 2014 SUnit: latest developments Niall Ross, Cincom Jan Vrany, eXept Sunit Open-Source project
  • Debugging Suites that use Resources •Run suite with resources: see failure Debug the failing test: see it pass Debug all tests in suite: see them all pass What’s happening? earlier test affected resource-managed state, caused failure •e.g. earlier test created data in a table the resource creates in database TestCase>>debug tears down resources for each test •TestResource’s table torn down and recreated – interfering data is gone •The Fix: new method TestResource>debug a polymorph of TestCase>>debug
  • TestSuite, TestResult pluggable in base •Prior ESUG: pluggable in your test runner tools Stephane said “Put it in the base.” Niall said: “Shape-change in base is a big deal …” •… now: pluggable in the base •TestCase>>suiteClass: myTestSuiteSubclass TestCase>>suiteClass ^SuiteClass ifNil: [TestSuite] •PluggableTestSuite = pluggable TestResult subclasses RandomSuite, MinimalResConflictSuite, … ClassifiedTestResult, …
  • Other Stuff •TestCase/Suite>>run/run: API methods have better comments #run tears down resources #run: does not •TestCase>>asNew override in (very rare) case that your tests have key instvars •Deprecated methods: (anyone use them?) #debugAsFailure, #openDebuggerOnFailingTestMethod, #runCaseAsFailure: •TestCase>>= and >>hash in base SUnit
  • Slim SUnit v. Fat SUnit? •slim base SUnit Load base SUnit for • TestCase, TestSuite, TestResult , TestResource (and TestAsserter) Load SUnit<Specific> for •Examples of Pluggable TestSuite and TestResult subclasses •Examples of other TestCaseOutcomes, e.g. TestSkip assimilated to #expectedFailures •Other SUnit OS-project stuff •fat base SUnit Load base SUnit to get much more (than you want)?