Junior
Ξέρεις κάποιον τύπο δοκιμής;
sobes.tech AI
Απάντηση από AI
Ναι, ξέρω.
Βασικοί τύποι δοκιμών:
-
Λειτουργική δοκιμή:
- Δοκιμή καπνού (Smoke Testing)
- Δοκιμή λογικής (Sanity Testing)
- Δοκιμή ολοκλήρωσης (Integration Testing)
- Δοκιμή συστήματος (System Testing)
- Δοκιμή επαναφοράς (Regression Testing)
- Δοκιμή αποδοχής (Acceptance Testing) - συμπεριλαμβανομένων των alpha και beta δοκιμών.
-
Μη λειτουργική δοκιμή:
- Δοκιμή απόδοσης (Performance Testing) - περιλαμβάνει φόρτωση, στρες, και όγκο δοκιμές.
- Δοκιμή ασφαλείας (Security Testing)
- Δοκιμή χρηστικότητας (Usability Testing)
- Δοκιμή συμβατότητας (Compatibility Testing)
- Δοκιμή αξιοπιστίας (Reliability Testing)
- Δοκιμή προσβασιμότητας (Accessibility Testing)
- Δοκιμή τοπικοποίησης (Localization Testing)
- Δοκιμή διεθνοποίησης (Internationalization Testing)
-
Δοκιμή που σχετίζεται με αλλαγές:
- Δοκιμή καπνού (Smoke Testing)
- Δοκιμή επαναφοράς (Regression Testing)
-
Δοκιμή δομής (βάσει κώδικα):
- Μονάδα δοκιμής (Unit Testing)
- Δοκιμή λευκού κουτιού (White Box Testing)
-
Δοκιμή βάσει εμπειρίας:
- Εξερευνητική δοκιμή (Exploratory Testing)
- Δοκιμή βάσει λίστας ελέγχου (Checklist-based Testing)
- Δοκιμή βάσει σεναρίων (Scenario-based Testing)
Παραδείγματα εφαρμογής ορισμένων τύπων:
| Τύπος δοκιμής | Σύντομη περιγραφή | Πότε εφαρμόζεται |
|---|---|---|
| Δοκιμή καπνού | Έλεγχος βασικών λειτουργιών μετά την κατασκευή ή την ανάπτυξη. | Κάθε νέα κατασκευή. |
| Δοκιμή επαναφοράς | Έλεγχος ότι οι αλλαγές δεν εισήγαγαν νέα ελαττώματα στη υπάρχουσα λειτουργικότητα. | Μετά από κάθε αλλαγή ή διόρθωση ελαττώματος. |
| Δοκιμή φόρτωσης | Έλεγχος της συμπεριφοράς του συστήματος υπό την αναμενόμενη φόρτωση. | Πριν από την έναρξη λειτουργίας, κατά τις αλλαγές αρχιτεκτονικής. |
| Μονάδα δοκιμής | Δοκιμή μεμονωμένων συστατικών ή μονάδων κώδικα. | Στο στάδιο ανάπτυξης, από τους προγραμματιστές. |
Στην αυτοματοποίηση δοκιμών, συχνά αυτοματοποιούμε τις δοκιμές επαναφοράς, τις δοκιμές ολοκλήρωσης και μερικές φορές τις δοκιμές απόδοσης και ασφαλείας.
// Παράδειγμα μονάδων δοκιμής (JUnit)
public class Calculator {
public int add(int a, int b) {
return a + b;
}
}
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
class CalculatorTest {
@Test
void testAdd() {
Calculator calculator = new Calculator();
assertEquals(5, calculator.add(2, 3), "Το άθροισμα 2 και 3 πρέπει να είναι 5");
}
}
# Παράδειγμα δοκιμής Selenium Webdriver (Python)
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.google.com")
print(driver.title)
driver.quit()