Files
jaxwsdemo/run-coverage.sh

51 lines
1.7 KiB
Bash

#!/bin/bash
# Script to generate code coverage reports using Docker
echo "================================================================================"
echo "Generating Code Coverage Reports"
echo "================================================================================"
echo ""
# Clean previous reports
if [ -d "target/site/jacoco" ]; then
echo "Cleaning previous coverage reports..."
rm -rf target/site/jacoco
echo ""
fi
# Run tests with coverage
docker-compose -f docker-compose.coverage.yml up --build
echo ""
echo "================================================================================"
echo "Coverage Report Generated"
echo "================================================================================"
echo ""
echo "HTML Report: target/site/jacoco/index.html"
echo "XML Report: target/site/jacoco/jacoco.xml"
echo "CSV Report: target/site/jacoco/jacoco.csv"
echo ""
echo "Open the HTML report in your browser to view coverage details."
echo ""
# Clean up the coverage container
docker-compose -f docker-compose.coverage.yml down
# Ask user if they want to open the report (for systems with xdg-open)
read -p "Would you like to open the coverage report now? (y/n): " OPEN_REPORT
if [ "$OPEN_REPORT" = "y" ] || [ "$OPEN_REPORT" = "Y" ]; then
if [ -f "target/site/jacoco/index.html" ]; then
# Try to open with default browser
if command -v xdg-open > /dev/null; then
xdg-open target/site/jacoco/index.html
elif command -v open > /dev/null; then
open target/site/jacoco/index.html
else
echo "Please open target/site/jacoco/index.html manually in your browser."
fi
else
echo "Error: Coverage report not found!"
fi
fi