Какой язык программирования вы используете в работе?

«Какой язык программирования вы используете в работе?» — вопрос из категории Софт-скиллы, который задают на 24% собеседований AQA / Automation. Ниже — развёрнутый пример ответа, который можно адаптировать под свой опыт.

Ответ

В своей работе QA Automation Engineer я в основном использую Java в связке с Selenium WebDriver для UI-тестирования и REST Assured или Apache HttpClient для API-тестирования. Фреймворки для организации тестов — JUnit 5 или TestNG.

Выбор Java обусловлен его статической типизацией (меньше ошибок на этапе написания кода), мощными инструментами рефакторинга (IDE) и тем, что многие enterprise-проекты, над которыми я работал, были написаны на Java или Kotlin, что упрощало интеграцию.

Пример простого API-теста на Java с REST Assured:

import io.restassured.RestAssured;
import org.junit.jupiter.api.Test;
import static org.hamcrest.Matchers.*;

public class ApiTest {
    @Test
    public void getUserShouldReturnValidData() {
        RestAssured.given()
                .baseUri("https://api.example.com")
                .when()
                .get("/users/1")
                .then()
                .statusCode(200)
                .body("id", equalTo(1))
                .body("name", not(emptyString()));
    }
}

Также для специфических задач (скрипты для парсинга логов, быстрые прототипы) я использую Python с библиотеками pytest и requests. Для проектов с современным frontend на JavaScript/TypeScript рассматриваю Playwright или Cypress.