SlideShare a Scribd company logo
The future of testing
in Pharo
Julien Delplanque
julien.delplanque@inria.fr
About me
• 2nd year of PhD in RMoD team

• Hacking Pharo around many aspects… just for fun :-)

• Hit by testing topic « by accident »
This is me on discord.
This is me on github

and twitter.
!2
The one who work on this
topic right now
• 2nd year of Master

• Doing an internship in RMoD team for 6 months

• Master thesis on the enhancements of tests in Pharo
This is Dayne on discord.
This is Dayne on github.
Her other mentors on Github
Guille Steph
!3
Questions this talk
addresses
• What infrastructure Pharo provides for testing?

• How can we enhance testing experience?
!4
What infrastructure Pharo
provides for testing?
!5
What infrastructure Pharo
provides for testing?
Pharo’s SUnit
SUnit-UI
Jenkins-
Tools
System
browser
!6
What infrastructure Pharo
provides for testing?
Pharo’s SUnit
SUnit-UI
Jenkins-
Tools
System
browser
Custom layer for
visiting, « deciding
color » of results, …
Custom layer for
visiting, « deciding
color » of results, …
Custom layer for
visiting, « deciding
color » of results, …
≠ ≠
In fact,
!7
The infrastructure we want
Pharo’s SUnit
SUnit-UI
Jenkins-
Tools
System
browser
Common layer for visiting, « deciding color » of results, …
Dr Tests
Push

into
!8
The infrastructure we want
Enhanced Pharo’s SUnit
refactoredJenkins
-Tools
refactoredSystem
browser
DrTests
DrTests Plugins
!9
How can we enhance
testing experience?
!10
What can we do with tests?
Runner Coverage Profile
Parametrisable

test
Mutation
testing
Run
examples in
comment
Rotten
Tests
Finder
…
Input Test cases Test cases
Test
cases
Test cases

+

parameters
Test
cases

+

mutation
s
Comments Test cases …
Outpu
t
Results of
tests run
Percentage
of methods
covered
Time
taken for
each test
run
Results of
tests run
depending
on
parameter
Mutants
to be
killed
Comments
containing
failing
examples
Rotten
tests
…
Managed by SUnit-UI
!11
TestRunner UI
Packages
containing tests
TestCases
Results
summary
Failed tests
Errors
Run tests Profile test
execution
Analyse code

coverage
Re-run failures
or errors only Export results
!12
TestRunner UI: coverage
!13
TestRunner UI: profile
!14
Runner Coverage Profile
Parametrisable

test
Mutation
testing
Run
examples in
comment
Rotten
Tests
Finder
…
Input Test cases Test cases
Test
cases
Test cases

+

parameters
Test
cases

+

mutation
s
Comments Test cases …
Outpu
t
Results of
tests run
Percentage
of methods
covered
Time
taken for
each test
run
Results of
tests run
depending
on
parameter
Mutants
to be
killed
Comments
containing
failing
examples
Rotten
tests
…
What can we do with tests?
Managed by SUnit-UI
Poor integration
No integration
!15
Proposal: Dr Tests
Power-up testing experience in Pharo by:

Developing and promoting DrTests as the new UI for
testing

‣ Written in Spec

‣ Extensible via plugins

‣ Provides good model to configure, run and gather
results from plugins
!16
Dr Tests
Packages
under analysis
Plugin inputPlugin selected
Results

tree
Plugin-defined
action(s)
Start pluginLogging label Browse result
!17
Mini Dr Tests
Button to re-run according to configuration Go back to normal UI to

configure plugins, input, etc.
➡Simplified view to use a plugin once it is configured
!18
Mini Dr Tests
Button’s color gives visual feedback

about last result of plugin
!19
Dr Tests model
Plugin

Configuration
Plugin

Result
Plugin
Plugin run,

provides updates

through announcements
Created from UI

or by scripting
Can be queried from

UI or by scripting
Can specify class to use Can specify class to use
!20
Conclusion
!21
Vision
★Enhanced SUnit

★Uniform API for SUnit clients

★Plugin-based testing UI = Dr Tests
★More tools to handle tests = Dr Tests plugins
➡We want a testing ecosystem able to evolve
!22
What’s next?
Dayne is working on Dr Tests and SUnit enhancements
Clothilde will work on Smart Tests soon
!23
can test it!
!24
You can help the effort!
juliendelplanque/DrTests
We are interested in your inputs and contributions!
@juldelplanque
juliendelplanque
!25

More Related Content

PDF
UI Testing with Spec
PPT
N Unit Presentation
PPTX
Unit Testing (C#)
PPT
Xp Day 080506 Unit Tests And Mocks
PPTX
Unit tests & TDD
PPTX
Unit testing, UI testing and Test Driven Development in Visual Studio 2012
PDF
Clean Unit Test Patterns
PPTX
Test driven development in .Net - 2010 + Eclipse
UI Testing with Spec
N Unit Presentation
Unit Testing (C#)
Xp Day 080506 Unit Tests And Mocks
Unit tests & TDD
Unit testing, UI testing and Test Driven Development in Visual Studio 2012
Clean Unit Test Patterns
Test driven development in .Net - 2010 + Eclipse

What's hot (19)

PPT
Junit Interview Questions-ppt
PPT
Automated Unit Testing
PPTX
.Net Unit Testing with Visual Studio 2010
PPTX
Introduction To J unit
PPTX
NUnit Features Presentation
PPTX
Unit testing
PPTX
Introduction to testing with MSTest, Visual Studio, and Team Foundation Serve...
PPTX
Unit Testing And Mocking
PPTX
Moq presentation
PPT
PDF
Unit testing with Junit
PPSX
Unit Test Presentation
PPTX
Unit Testing
ODP
Beginners - Get Started With Unit Testing in .NET
PPS
Unit Testing
PPTX
Unit Testing Concepts and Best Practices
PDF
Workshop unit test
PPT
Unit testing
PPT
Unit Testing
Junit Interview Questions-ppt
Automated Unit Testing
.Net Unit Testing with Visual Studio 2010
Introduction To J unit
NUnit Features Presentation
Unit testing
Introduction to testing with MSTest, Visual Studio, and Team Foundation Serve...
Unit Testing And Mocking
Moq presentation
Unit testing with Junit
Unit Test Presentation
Unit Testing
Beginners - Get Started With Unit Testing in .NET
Unit Testing
Unit Testing Concepts and Best Practices
Workshop unit test
Unit testing
Unit Testing
Ad

Similar to The future of testing in Pharo (20)

PDF
DrTests: The Future of Testing in Pharo
PPT
Barcamp Bangalore 2 - On User Experience and Usability Testing
PDF
stackconf 2024 | Test like a ninja with Go by Ivan Presenti.pdf
PDF
Put an end to regression with codeception testing
PDF
May 2021 Spark Testing ... or how to farm reputation on StackOverflow
PDF
Solving the 3 Biggest Questions in Continuous Testing
PDF
DIY in 5 Minutes: Testing Django App with Pytest
PPTX
Ready, Set, Refactor
PDF
How not to suck at unit tests
PPTX
5 reasons you'll love to hate Agile Development
PPTX
Scrum/XP using Team System (devLink & Agile 2009)
PDF
5-Ways-to-Revolutionize-Your-Software-Testing
PDF
Holistic testing in DevOps
PDF
Continuous delivery is more than dev ops
PDF
An introduction to Machine Learning
DOC
Vinayak Kshirsagar Resume
ODP
Passing The Joel Test In The PHP World
PPTX
Types of testing
PPTX
Munit_in_mule_naveen
PDF
30 of the best free software test tools in 60 minutes by Jess Lancaster
DrTests: The Future of Testing in Pharo
Barcamp Bangalore 2 - On User Experience and Usability Testing
stackconf 2024 | Test like a ninja with Go by Ivan Presenti.pdf
Put an end to regression with codeception testing
May 2021 Spark Testing ... or how to farm reputation on StackOverflow
Solving the 3 Biggest Questions in Continuous Testing
DIY in 5 Minutes: Testing Django App with Pytest
Ready, Set, Refactor
How not to suck at unit tests
5 reasons you'll love to hate Agile Development
Scrum/XP using Team System (devLink & Agile 2009)
5-Ways-to-Revolutionize-Your-Software-Testing
Holistic testing in DevOps
Continuous delivery is more than dev ops
An introduction to Machine Learning
Vinayak Kshirsagar Resume
Passing The Joel Test In The PHP World
Types of testing
Munit_in_mule_naveen
30 of the best free software test tools in 60 minutes by Jess Lancaster
Ad

Recently uploaded (20)

PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Digital Strategies for Manufacturing Companies
PDF
medical staffing services at VALiNTRY
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PPTX
ai tools demonstartion for schools and inter college
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPTX
history of c programming in notes for students .pptx
PDF
Softaken Excel to vCard Converter Software.pdf
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
Transform Your Business with a Software ERP System
PDF
System and Network Administration Chapter 2
PDF
Digital Systems & Binary Numbers (comprehensive )
PPTX
Operating system designcfffgfgggggggvggggggggg
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Digital Strategies for Manufacturing Companies
medical staffing services at VALiNTRY
Adobe Illustrator 28.6 Crack My Vision of Vector Design
How to Migrate SBCGlobal Email to Yahoo Easily
ai tools demonstartion for schools and inter college
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
history of c programming in notes for students .pptx
Softaken Excel to vCard Converter Software.pdf
CHAPTER 2 - PM Management and IT Context
Which alternative to Crystal Reports is best for small or large businesses.pdf
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Design an Analysis of Algorithms II-SECS-1021-03
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Transform Your Business with a Software ERP System
System and Network Administration Chapter 2
Digital Systems & Binary Numbers (comprehensive )
Operating system designcfffgfgggggggvggggggggg

The future of testing in Pharo

  • 1. The future of testing in Pharo Julien Delplanque julien.delplanque@inria.fr
  • 2. About me • 2nd year of PhD in RMoD team • Hacking Pharo around many aspects… just for fun :-) • Hit by testing topic « by accident » This is me on discord. This is me on github
 and twitter. !2
  • 3. The one who work on this topic right now • 2nd year of Master • Doing an internship in RMoD team for 6 months • Master thesis on the enhancements of tests in Pharo This is Dayne on discord. This is Dayne on github. Her other mentors on Github Guille Steph !3
  • 4. Questions this talk addresses • What infrastructure Pharo provides for testing? • How can we enhance testing experience? !4
  • 6. What infrastructure Pharo provides for testing? Pharo’s SUnit SUnit-UI Jenkins- Tools System browser !6
  • 7. What infrastructure Pharo provides for testing? Pharo’s SUnit SUnit-UI Jenkins- Tools System browser Custom layer for visiting, « deciding color » of results, … Custom layer for visiting, « deciding color » of results, … Custom layer for visiting, « deciding color » of results, … ≠ ≠ In fact, !7
  • 8. The infrastructure we want Pharo’s SUnit SUnit-UI Jenkins- Tools System browser Common layer for visiting, « deciding color » of results, … Dr Tests Push
 into !8
  • 9. The infrastructure we want Enhanced Pharo’s SUnit refactoredJenkins -Tools refactoredSystem browser DrTests DrTests Plugins !9
  • 10. How can we enhance testing experience? !10
  • 11. What can we do with tests? Runner Coverage Profile Parametrisable
 test Mutation testing Run examples in comment Rotten Tests Finder … Input Test cases Test cases Test cases Test cases
 +
 parameters Test cases
 +
 mutation s Comments Test cases … Outpu t Results of tests run Percentage of methods covered Time taken for each test run Results of tests run depending on parameter Mutants to be killed Comments containing failing examples Rotten tests … Managed by SUnit-UI !11
  • 12. TestRunner UI Packages containing tests TestCases Results summary Failed tests Errors Run tests Profile test execution Analyse code coverage Re-run failures or errors only Export results !12
  • 15. Runner Coverage Profile Parametrisable
 test Mutation testing Run examples in comment Rotten Tests Finder … Input Test cases Test cases Test cases Test cases
 +
 parameters Test cases
 +
 mutation s Comments Test cases … Outpu t Results of tests run Percentage of methods covered Time taken for each test run Results of tests run depending on parameter Mutants to be killed Comments containing failing examples Rotten tests … What can we do with tests? Managed by SUnit-UI Poor integration No integration !15
  • 16. Proposal: Dr Tests Power-up testing experience in Pharo by: Developing and promoting DrTests as the new UI for testing ‣ Written in Spec ‣ Extensible via plugins ‣ Provides good model to configure, run and gather results from plugins !16
  • 17. Dr Tests Packages under analysis Plugin inputPlugin selected Results
 tree Plugin-defined action(s) Start pluginLogging label Browse result !17
  • 18. Mini Dr Tests Button to re-run according to configuration Go back to normal UI to
 configure plugins, input, etc. ➡Simplified view to use a plugin once it is configured !18
  • 19. Mini Dr Tests Button’s color gives visual feedback about last result of plugin !19
  • 20. Dr Tests model Plugin
 Configuration Plugin
 Result Plugin Plugin run,
 provides updates
 through announcements Created from UI
 or by scripting Can be queried from
 UI or by scripting Can specify class to use Can specify class to use !20
  • 22. Vision ★Enhanced SUnit ★Uniform API for SUnit clients ★Plugin-based testing UI = Dr Tests ★More tools to handle tests = Dr Tests plugins ➡We want a testing ecosystem able to evolve !22
  • 23. What’s next? Dayne is working on Dr Tests and SUnit enhancements Clothilde will work on Smart Tests soon !23
  • 25. You can help the effort! juliendelplanque/DrTests We are interested in your inputs and contributions! @juldelplanque juliendelplanque !25