Software that examines Java bytecodes and assists in identifying challenging to test code.
One of the standout features of Testability-explorer is its ability to provide a detailed breakdown of reasons why certain code may be hard to test. This makes it an ideal tool for anyone who is learning how to improve their testing skills.
In addition to being a learning tool, Testability-explorer is also a powerful analysis tool that can be used to identify hard-to-test hair-balls in legacy code. It can be easily integrated into your code analysis-toolset and used to enforce testable code in continuous integration.
Currently, the software includes two main metrics for measuring testability: Non-Mockable Total Recursive Cyclomatic Complexity and Global Mutable State.
The Non-Mockable Total Recursive Cyclomatic Complexity is a measure of how many different paths of execution are in the code. It takes into account the cost of the method as well as any other methods it calls. It is total in that it also includes the cost of object construction and static initializations. This metric is especially useful because it only considers the code that cannot be mocked out in tests.
The Global Mutable State metric counts the number of fields that are globally reachable by the class under test and which are mutable. If there is a mutable global state, it can make testing more difficult, as tests are not isolatable.
It is also worth noting that Testability-explorer is licensed and distributed under the terms of the Apache License 2.0. This makes it an open source software that can be easily customized and adapted to meet your specific testing needs. Overall, if you are looking for a reliable testing tool that can help you improve the quality of your code, Testability-explorer is definitely worth checking out.
Version 1.3.0 R275: N/A