Skip to content
Back to skills

Build Setup

ASecurity

Set up build environment and test fixtures for COBOL-to-Java migrations. Creates compilation infrastructure for both languages and generates golden test data.

  • 151 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added June 5, 2026
databasesgojava

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned June 5, 2026

npx -y skills add OpenHands/extensions --skill build-setup --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Build Setup?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Build Setup
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/openhands-build-setup/badge)](https://www.skillsdirectory.com/skills/openhands-build-setup)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: build-setup
description: Set up build environment and test fixtures for COBOL-to-Java migrations. Creates compilation infrastructure for both languages and generates golden test data.
license: MIT
compatibility: Requires GnuCOBOL (cobc), Java 11+, Maven or Gradle
triggers:
  - cobol build
  - cobol test fixtures
  - migration build setup
  - gnucobol
---

Set up a build environment and create test fixtures for validating COBOL-to-Java migrations.

To install GnuCOBOL, run: `./scripts/install-gnucobol.sh`

## Phase 1: Build Setup

### COBOL Build

- Find a way to compile and run the COBOL code (e.g., GnuCOBOL)
- Verify at least one program compiles and executes
- Note any dependencies or setup required

### Java Build

- Initialize a Java project alongside the COBOL code (Maven or Gradle)
- Set up standard directory structure: `src/main/java`, `src/test/java`
- Include JUnit 5 as a test dependency
- Verify the project builds (even if empty)

## Phase 2: Test Fixture Generation

For each major COBOL program:

### Create Synthetic Test Inputs

- Save to: `test-fixtures/inputs/{PROGRAM_NAME}/`
- Create 3-5 test cases per program covering:
  - Normal/happy path (valid, typical data)
  - Edge cases (empty input, maximum values, boundary conditions)
  - Error cases (invalid formats, missing required fields)

### Generate Golden Outputs

- Run each COBOL program with each test input
- Save COBOL output to: `test-fixtures/expected_outputs/{PROGRAM_NAME}/`
- These become the "golden" outputs that Java must match

### Create Test Manifest

Save to `test_manifest.json`:

```json
{
  "PROGRAM1": {
    "description": "Brief description of what this program does",
    "test_cases": [
      {
        "name": "normal_invoice",
        "input": "inputs/PROGRAM1/test_001.dat",
        "expected": "expected_outputs/PROGRAM1/test_001.out",
        "description": "Happy path"
      }
    ]
  }
}
```

## Deliverables

1. **build_notes.md** — Build instructions for COBOL and Java
2. **test-fixtures/** — Directory with `inputs/` and `expected_outputs/`
3. **test_manifest.json** — JSON manifest of all test cases

## Priority

Focus on programs with core business logic (transactions, calculations, data processing). UI-heavy programs (menu screens, reports) are lower priority.

Files in this skill

  • SKILL.md2.3 KB
  • scripts/install-gnucobol.sh814 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…