Your procedure integration tests may interact with some Java code, so you want to write the test in Java anyway. @Test public void testAdd() { try (CloseableDSLContext ctx = DSL.using( db.getJdbcUrl(), "postgres", "test" )) { assertEquals(3, Routines.add(ctx.configuration(), 1, 2)); } } You can then re-use the code generator testcontainers instance for your integration tests, if you want.