Scala, Kotlin, Java and Code Coverage: show all that is hidden
Do you know what Scala compiler places inside of your class-files?
Do you know how bytecode produced by Scala compiler differs from bytecode produced by Java and Kotlin compilers?
Are you ready to bet?
Let's have fun by diving into bytecode constructions, and explore how Scala compiler and others transform your source code.
Our dive will be based on details of implementation of most popular code coverage tool — JaCoCo, whose latest versions find in bytecode and filter out various compiler generated artifacts, which otherwise require unnecessary and sometimes impossible tricks to have full code coverage.