Code Coverage Revised : EclEmma on JaCoCo

5,189 views

Published on

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

No Downloads
Views
Total views
5,189
On SlideShare
0
From Embeds
0
Number of Embeds
501
Actions
Shares
0
Downloads
90
Comments
0
Likes
7
Embeds 0
No embeds

No notes for slide

Code Coverage Revised : EclEmma on JaCoCo

  1. 1. Code Coverage Revised EclEmma on JaCoCo Evgeny Mandrikov
  2. 2. Code quality 1 of 7 deadly sins of developer Insufficient code coverage by testshttp://sonarsource.com
  3. 3. Untested Code is theDark Matter of Software Apparently because it makes up 90% of the software universe Robert (Uncle Bob) Martin August 2006
  4. 4. Correctness Test AppCompleteness
  5. 5. RequirementsA Library Tested Framework Agnostic ScalableFreaking Fast Freaking Easy
  6. 6. Code CoverageRuntime profiling Instrumentation Source Bytecode Offline On-The-Fly Replace Inject Class Loader Java Agent
  7. 7. Java Byte CodeInstrumentation ALOAD probearray ICONST probeid ICONST_1 BASTORE
  8. 8. Java Agent$ java -javaagent:jacocoagent.jar killerApp *.exec
  9. 9. Comparison Emma Cobertura Clover JaCoCoLicense CPL GPL Commercial EPLLatest release 13/06/2005 03/03/2010 25/04/2012 19/04/2012Type offline offline offline online bytecode bytecode source code bytecodeJava 1.2 — 1.6 1.3 — 1.6 1.4 — 1.7 1.5 — 1.7Line hits partial yes yes partialBranch no yes yes yescoverage
  10. 10. Comparison
  11. 11. IntegrationsAnt Eclipse Maven Sonar IntelliJ IDEA AquillianGUIDancer SBT
  12. 12. MetricsTypes MethodsLines InstructionsBranches Complexity
  13. 13. Plug-in TestingNo moreWorkspace Rebuilds!
  14. 14. Intermediate DumpsIncremental CodeCoverage
  15. 15. Showcases Fight Dark Matter In Your Software!
  16. 16. FutureDetermine relationship code - testEven faster with JSR 292 (Java 7) FiltersInject into a running JVM (Java 6)
  17. 17. Contributehttp://jacoco.org
  18. 18. ?

×