Sobes.tech
Junior

Milliseid tarkvara testimise liike sa tead?

sobes.tech AI

Vastus AI-lt

  • Ühiku (Unit) testimine: Eraldi komponentide või moodulite testimine isoleeritult.
  • Integreerimise (Integration) testimine: Mitme mooduli vaheline koostöötestimine.
  • Süsteemi (System) testimine: Kogu süsteemi testimine ühe tervikuna, kontrollides vastavust funktsionaalsetele ja mittefunktsionaalsetele nõuetele.
  • Vastuvõtmise (Acceptance) testimine: Süsteemi kontroll lõppkasutajate või tellijate poolt, veendumaks, et see vastab nende ootustele.

Lisaks:

  • Funktsionaalne testimine: Süsteemi vastavuse kontroll funktsionaalsetele nõuetele.
  • Nefunktsionaalne testimine: Nefunktsionaalsete aspektide, nagu jõudlus, turvalisus, kasutusmugavus, kontroll.
  • Regressiooni testimine: Kontroll, et koodi muudatused ei rikkunud olemasolevat funktsionaalsust.
  • Koormustestimine: Süsteemi jõudluse määramine teatud koormuse all.
  • Stresstestimine: Süsteemi testimine äärmuslikes koormustingimustes.
  • Turvatestimine: Haavatavuste avastamine süsteemis.
  • Kasutusmugavuse testimine (Usability testing): Lõppkasutajate süsteemi kasutamise lihtsuse ja intuitiivsuse hindamine.

Oma töös kasutan sageli:

// JUnit näide üksustestist
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;

class MyServiceTest {

    @Test
    void testAdd() {
        MyService service = new MyService();
        assertEquals(5, service.add(2, 3));
    }
}
// Spring Booti integratsioonitesti näide
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.web.client.TestRestTemplate;
import org.springframework.http.ResponseEntity;

import static org.assertj.core.api.Assertions.assertThat;

@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
class MyControllerIntegrationTest {

    @Autowired
    private TestRestTemplate restTemplate;

    @Test
    void testHelloEndpoint() {
        ResponseEntity<String> response = restTemplate.getForEntity("/hello", String.class);
        assertThat(response.getBody()).isEqualTo("Hello, World!");
    }
}