Wie benutze ich mockito zum Testen eines REST-Service?

Ich bin sehr neu in Java Unit Testing und habe gehört, dass das Mockito-Framework wirklich gut für Testzwecke ist.

Ich habe einen REST-Server (CRUD-Methoden) entwickelt und möchte ihn jetzt testen, weiß aber nicht wie?

Noch mehr weiß ich nicht, wie dieses Testverfahren beginnen soll. Mein Server sollte auf localhost funktionieren und dann diese URL aufrufen (z. B. localhost: 8888).

Folgendes habe ich bisher versucht, aber ich bin mir ziemlich sicher, dass dies nicht der richtige Weg ist.

    @Test
    public void testInitialize() {
        RESTfulGeneric rest = mock(RESTfulGeneric.class);

        ResponseBuilder builder = Response.status(Response.Status.OK);

        builder = Response.status(Response.Status.OK).entity(
                "Your schema was succesfully created!");

        when(rest.initialize(DatabaseSchema)).thenReturn(builder.build());

        String result = rest.initialize(DatabaseSchema).getEntity().toString();

        System.out.println("Here: " + result);

        assertEquals("Your schema was succesfully created!", result);

    }

Hier ist der Code fürinitialize Methode.

    @POST
    @Produces(MediaType.APPLICATION_JSON)
    @Path("/initialize")
    public Response initialize(String DatabaseSchema) {

        /** Set the LogLevel to Info, severe, warning and info will be written */
        LOGGER.setLevel(Level.INFO);

        ResponseBuilder builder = Response.status(Response.Status.OK);

        LOGGER.info("POST/initialize - Initialize the " + user.getUserEmail()
                + " namespace with a database schema.");

        /** Get a handle on the datastore itself */
        DatastoreService datastore = DatastoreServiceFactory
                .getDatastoreService();


        datastore.put(dbSchema);

        builder = Response.status(Response.Status.OK).entity(
                "Your schema was succesfully created!");
        /** Send response */
        return builder.build();
    }

In diesem Testfall möchte ich einen Json-String an den Server senden (POST). Wenn alles geklappt hat, sollte der Server mit "Ihr Schema wurde erfolgreich erstellt!" Antworten.

Kann mir bitte jemand helfen?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage