Solución portátil Java EE 7 para integración y pruebas unitarias

Estoy tratando de encontrar una solución portátil para probar mi aplicación Java EE 7. Es especialmente complicado cuándo probar el EJB y sus inyecciones. Por ejemplo:

@org.junit.Test
    public void testIsValidCredentials() throws Exception {
        System.out.println("isValidCredentials");
        String username = "";
        String password = "";

        Map properties = new HashMap();
        properties.put(EJBContainer.MODULES, new File[] {new File("target/classes")});

        EJBContainer container = javax.ejb.embeddable.EJBContainer.createEJBContainer();
        AuthenticatorLocal instance = (AuthenticatorLocal) container.getContext().lookup("java:global/classes/Authenticator");
        boolean expResult = false;
        boolean result = instance.isValidCredentials(username, password);
        assertEquals(expResult, result);
        container.close();
    }

Cuando ejecuto la prueba obtendré:

No hay ningún proveedor de EJBContainer disponible

También intenté usar la opciónproperties.put(EJBContainer.PROVIDER, ""), pero sin éxito. Hay algo de documentación disponible para Glassfish, pero para Wildfly es realmente pobre.

También he oído hablar de arquillian, pero solo veo paquetes Alpha, que no parecen seguros para la producción. ¿Alguien conoce una solución portátil para pruebas (de integración)?

Respuestas a la pregunta(1)

Su respuesta a la pregunta