Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Code Coverage Revised : EclEmma on JaCoCo

6,034 views

Published on

Published in: Technology, Education
  • Be the first to comment

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. ?

×