Summary of features coming up
Test code coverage
Mapping nodes
We will be looking to add coverage of MappingNodes/files as part of our next major release. This will mean that the coverage report will include which paths have been executed by the test cases.
Datapower
For Datapower users, we will be looking to add basic coverage in the following release. This may be initially as simple as showing in the code coverage report which Datapower flows were executed. Once we have that implemented we will be looking at how we can provide coverage of executing branches.
Diagram generation
Code coverage
Once code coverage of Msgflows has been implemented we will look to overlay that information with the generated architectural diagram so that it will be easy to identify which flows have been executed as part of unit testing.
SQL expansion
Summary and expansion of all SQL code in a project so that DBAs can monitor and review embedded SQL. This will include SQL run using the “PASSTHRU” function and in the native ESQL format.
Plugin performance
Configurable multi-threaded support to allow improved running of the plugin within a continuous build environment.
Performance
XSL Performance
Avoid descendant-or-self (//) if possible
- It traverses (and parses) the whole message
- Use /descendant::aaa[1] instead of (//aaa)[1]
Check DB Access
Check DBAccess nodes have reasonable polling intervals as to not cause DB resource contention.
Stored Procedures
Access stored procedures via “CREATE PROCEDURE” rather then “PASSTHRU”.
Standards
Magic numbers and Strings
Track magic numbers and strings that could be constants.
Publishing
Publish a generated file of queues required
Helps with managing queue definition promotion.
Publish list of promoted properties
Helps with determining which properties need to be setup for sending through to baroveride.
Publish list of flows and messagesets
Helps to develop deployment scripts that make use of “mqsibardeploy” for use in ant builds.
Check for deprecated nodes
Functions return values
Functions should return values otherwise they should be procedures.
Check that nodes and subflows are connected
Warn when nodes and flows are not connected as they are effectively dead code.
Correctness
Warn on delete
Warn when whole table deletes are being called.
Message set ID’s
Check that the message sets used in the code are valid.
PASSTHRU
Check that the SQL used in a PASSTHRU has the correct number of values passed in.
Check that alias names are “quoted” to ensure the case is honored. Navigating the message tree is case sensitive.