Junior
რომელი ტიპის პროგრამული უზრუნველყოფის ტესტებს იცნობ?
sobes.tech AI
პასუხი AI-სგან
- მოდულური (Unit) ტესტირება: ინდივიდუალური კომპონენტების ან მოდულების იზოლირებული ტესტირება.
- ინტეგრირებული (Integration) ტესტირება: რამდენიმე მოდულის ურთიერთქმედების ტესტირება.
- სისტემური (System) ტესტირება: მთელი სისტემის ტესტირება როგორც ერთ მთლიანობად, ფუნქციონალური და ნეფუნქციონალური მოთხოვნების შესაბამისობის შემოწმებით.
- მიღების (Acceptance) ტესტირება: სისტემის შემოწმება საბოლოო მომხმარებლების ან შეკვეთის მიერ, რათა დარწმუნდნენ, რომ ის პასუხობს მათ მოლოდინებს.
დამატებით:
- ფუნქციონალური ტესტირება: სისტემის შესაბამისობის შემოწმება ფუნქციონალურ მოთხოვნებთან.
- ნეფუნქციონალური ტესტირება: ნეფუნქციონალური ასპექტების შემოწმება, როგორიცაა შესრულება, უსაფრთხოება, გამოყენების მარტივობა.
- რეგრესიული ტესტირება: შემოწმება, რომ კოდში ცვლილებები არ დაურღვევია არსებული ფუნქციონალი.
- მატვირთველობა ტესტირება: სისტემის შესრულების განსაზღვრა გარკვეული დატვირთვის ქვეშ.
- სტრეს-ტესტირება: სისტემის გამოცდა ექსტრემალურ დატვირთვაში.
- უსაფრთხოების ტესტირება: სისტემაში სუსტი წერტილების გამოვლენა.
- გამოყენების მარტივობის ტესტირება (Usability testing): სისტემის გამოყენების სოლიდურობის და ინტუიციურობის შეფასება საბოლოო მომხმარებლების მიერ.
ჩემი მუშაობის დროს ხშირად ვიყენებ:
// JUnit-ის მაგალითი ერთეულური ტესტით
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-ის ინტეგრაციის ტესტის მაგალითი
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!");
}
}