BMC AMI DevX Code Coverage
Overview
The BMC AMI DevX Code Coverage extension allows Azure DevOps users to extract Code Coverage results for the COBOL source from a BMC AMI DevX Code Coverage repository. These results can then be viewed in SonarQube.
Prerequisites
The following are required to use this extension:
- Azure Pipelines - in Azure DevOps Services or Azure DevOps Server
- BMC AMI Common Configuration Extension
- BMC AMI DevX Workbench for Eclipse (Workbench for Eclipse) CLI 18.2.4 or later. Refer to the BMC AMI DevX Workbench for Eclipse Installation Guide for instructions.
- BMC AMI DevX Code Coverage 17.2, PTF PA01563
- BMC AMI Common Shared Services 17.2, PTF CXS527A
Installing in Azure Pipelines - in Azure DevOps Services or Azure DevOps Server
- Install the BMC AMI DevX Code Coverage extension according to the Azure DevOps Server instructions for installing extensions. Dependent extensions will automatically be installed.
- Install the Workbench for Eclipse CLI on the Azure DevOps Pipelines instances that will execute the extension. The Workbench for Eclipse CLI is available in the Workbench for Eclipse installation package. If you do not have the installation package, please visit support.bmc.com. For Workbench for Eclipse CLI installation instructions, refer to the BMC AMI DevX Workbench for Eclipse Installation Guide.
Configuring for Workbench for Eclipse CLI and Host Connections
To use Workbench utilities, you will need to point to an installed Workbench for Eclipse Command Line Interface (CLI) that has host connections configured.
Retrieve Code Coverage Statistics
This integration allows downloading of Code Coverage data from a repository. Perform the following steps:
When creating the new Azure pipeline, add a new task BMC AMI DevX Code Coverage by clicking the + icon on the Agent Job.
This task has the following parameters:
Host connection : Select the host connection to be used to connect to the z/OS host.
Alternatively, to add a connection,click on BMC AMI Common Configuration extension in application hub.
User ID : Enter the user ID to use for logging onto the z/OS host.
Password : Pass the pipeline variable name, which stores Password as a secret in the Azure pipeline. For example: $(variablename).
- Specify one or both of the following:
Path to analysis properties : Enter the path to an existing ccanalysis.properties file, which is a properties file used to specify the source, repository, system, test, and DDIO override information for the Code Coverage extraction.
Analysis properties : Enter the parameters for the Code Coverage extraction, by using the following syntax:
- cc.sources : Indicate the relative path to the source directories to be used for the Code Coverage extraction.
- cc.repos : Indicate the Code Coverage repository from which to extract code coverage data.
- cc.system: Indicate the system to be included in the scan.
- cc.test : Indicate the test ID to be included in the scan.
- cc.ddio.overrides : Indicate the new location of the program's DDIO file if the file was moved or renamed from what is specified in the repository.
Parameters entered via the Analysis properties box override corresponding parameters in the ccanalysis.properties file.
Click Save.
Run the job, which creates a CodeCoverage.xml file containing the Code Coverage information for the selected programs. This file is located in a Code Coverage subdirectory in the Azure DevOps Pipeline's Agent workspace. This file can be input into SonarQube to view the Code Coverage results.
During the Execute SonarQube Scanner Step, add the following property to import the Code Coverage data into SonarQube. sonar.coverageReportPaths=Coverage/CodeCoverage.xml
Known Limitations
- COBOL is currently the only language supported.
- The source code must be compiled using the BMC AMI Common Shared Services (CSS) pre-processor.
- Other pre-processors can cause changes to the original source file that are undetectable to CSS.
- Nested copybooks within the procedure division are not supported.
- COBOL COPY REPLACING statements in the procedure division may cause source mismatches.
Product Assistance
BMC provides assistance to customers with its documentation, the BMC Support web-site, and via telephone calls with the Customer Support team.
BMC Support Central
You can access online information about BMC products via our Support Center at https://support.bmc.com. Support Central provides access to critical information about your BMC products. You can review frequently asked questions, read or download documentation, access product fixes, or e-mail your questions or comments. The first time you access Support Center, you must register and obtain a password. The registration is free.
At BMC, we strive to make our products and documentation the best in the industry. Feedback from our customers helps us maintain our quality standards. If you need support services, please obtain the following information before calling BMC's 24-hour telephone support:
The Azure pipeline job output that contains any error messages or pertinent information.
The name, release number, and build number of your product. This information is displayed in the installed extensions page. Apply filter, BMC, to display all the installed BMC extensions.
Environment information, such as the operating system and release on which the Workbench for Eclipse CLI is installed.
Web
You can report issues via BMC Support website: https://support.bmc.com.
Note: Please report all high-priority issues by phone.
Corporate Website
To access the BMC website, go to https://www.bmc.com/. The BMC site provides a variety of product and support information.