Sobes.tech
Junior

Знаш ли неке типове тестова?

sobes.tech АИ

Одговор од АИ

Да, знам.

Основне врсте тестирања:

  • Функционално тестирање:

    • Тест дима (Smoke Testing)
    • Санити тестирање (Sanity Testing)
    • Интеграцијско тестирање (Integration Testing)
    • Системско тестирање (System Testing)
    • Регресионално тестирање (Regression Testing)
    • Прихватање тестирања (Acceptance Testing) - укључујући алфа и бета тестирања.
  • Нефункционално тестирање:

    • Тест перформанси (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()