Use Case

JUnit Integration Tests with MockHero

@BeforeAll Fixture

@SpringBootTest
class OrderServiceIT {

  @Autowired JdbcTemplate jdbc;

  @BeforeAll
  static void seed(@Autowired JdbcTemplate jdbc) throws Exception {
    var body = Map.of(
      "seed", 1,
      "tables", List.of(
        Map.of("name","users","count",20,"fields", List.of(
          Map.of("name","id","type","uuid"),
          Map.of("name","email","type","email")
        )),
        Map.of("name","orders","count",80,"fields", List.of(
          Map.of("name","id","type","uuid"),
          Map.of("name","user_id","type","ref","ref","users.id"),
          Map.of("name","total","type","price")
        ))
      )
    );
    var mapper = new ObjectMapper();
    var client = HttpClient.newHttpClient();
    var req = HttpRequest.newBuilder(URI.create("https://api.mockhero.dev/api/v1/generate"))
      .header("x-api-key", System.getenv("MOCKHERO_API_KEY"))
      .header("Content-Type","application/json")
      .POST(BodyPublishers.ofString(mapper.writeValueAsString(body)))
      .build();
    var res = client.send(req, BodyHandlers.ofString());
    // parse & insert via jdbc.batchUpdate(...)
  }
}

Get Started

Free API key.

M

MockHero Team

Guides and tutorials for generating realistic test data with the MockHero API.

Start generating test data for free

1,000 rows/month on the free tier. No credit card required.

Get Your API Key

Related Articles