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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.