Sobes.tech
Junior

Milyen szoftvertesztelési típusokat ismersz?

sobes.tech MI

Válasz az MI-től

  • Egység (Unit) teszt: A program egyes komponenseinek vagy moduljainak izolált tesztelése.
  • Integrációs teszt: Több modul közötti kölcsönhatás tesztelése.
  • Rendszer (System) teszt: A teljes rendszer egészként történő tesztelése, a funkcionális és nem-funkcionális követelményeknek való megfelelés ellenőrzése.
  • Elfogadási (Acceptance) teszt: A rendszer végfelhasználók vagy ügyfelek által történő ellenőrzése, hogy megfelel-e az elvárásaiknak.

Továbbá:

  • Funkcionális teszt: A rendszer funkcionális követelményeinek való megfelelés ellenőrzése.
  • Nem-funkcionális teszt: Nem-funkcionális aspektusok, például teljesítmény, biztonság, használhatóság ellenőrzése.
  • Regressziós teszt: Ellenőrzés, hogy a kódban végzett változtatások nem rontották el a meglévő funkciókat.
  • Terheléses teszt: A rendszer teljesítményének meghatározása adott terhelés alatt.
  • Stressz teszt: A rendszer extrém körülmények közötti tesztelése.
  • Biztonsági teszt: A rendszer sebezhetőségeinek feltárása.
  • Használhatósági teszt: A rendszer könnyű és intuitív használatának értékelése végfelhasználók által.

Saját munkámban gyakran használom:

// JUnit példája egység tesztnek
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 Boot integrációs teszt példája
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!");
    }
}