en
Feedback
Тестирование ПО | QA Auto

Тестирование ПО | QA Auto

Open in Telegram

QA Auto с 2005 года. Рассказываю про автоматизацию тестирования на Java, Rest Assured, TestNG, JUnit. Обучаю автоматизации тестирования на Java: http://qaway.ru/qa-courses/ Если видео нравится больше текста: https://youtube.com/c/QAWayAuto

Show more
1 149
Subscribers
+124 hours
-77 days
-1130 days
Attracting Subscribers
July '26
July '26
+6
in 0 channels
June '26
+9
in 0 channels
Get PRO
May '26
+1
in 0 channels
Get PRO
April '26
+13
in 0 channels
Get PRO
March '26
+25
in 0 channels
Get PRO
February '26
+21
in 0 channels
Get PRO
January '26
+37
in 0 channels
Get PRO
December '25
+37
in 0 channels
Get PRO
November '25
+46
in 0 channels
Get PRO
October '25
+45
in 0 channels
Get PRO
September '25
+30
in 0 channels
Get PRO
August '25
+39
in 0 channels
Get PRO
July '25
+41
in 0 channels
Get PRO
June '25
+33
in 0 channels
Get PRO
May '25
+50
in 0 channels
Get PRO
April '25
+49
in 0 channels
Get PRO
March '25
+50
in 0 channels
Get PRO
February '25
+55
in 0 channels
Get PRO
January '25
+72
in 0 channels
Get PRO
December '24
+44
in 0 channels
Get PRO
November '24
+54
in 1 channels
Get PRO
October '24
+58
in 0 channels
Get PRO
September '24
+713
in 0 channels
Date
Subscriber Growth
Mentions
Channels
28 July0
27 July+1
26 July0
25 July0
24 July0
23 July0
22 July0
21 July0
20 July0
19 July+1
18 July0
17 July0
16 July+1
15 July0
14 July0
13 July+1
12 July0
11 July+1
10 July0
09 July+1
08 July0
07 July0
06 July0
05 July0
04 July0
03 July0
02 July0
01 July0
Channel Posts
💬 Типы тестирования веб-приложений Тестирование веб-приложений - это достаточно объёмный раздел тестирования. Его можно разд
💬 Типы тестирования веб-приложений Тестирование веб-приложений - это достаточно объёмный раздел тестирования. Его можно разделить на следующие типы тестирования. 🔸 Тестирование функциональности. Это проверка того, что каждая функция веб-приложения работает в соответствии с требованиями. Эта область тестирования включает в себя проверку правильной работы ссылок, форм, загрузки файлов, cookie и другой функциональности веб-приложения. 🔸 Тестирование юзабилити. Сюда мы можем отнести проверку веб-приложения с точки зрения удобства пользователя. Здесь важно убедиться, что приложение интуитивно понятно. Пользователь легко в нём ориентируется, а само приложение является простым в использовании. 🔸 Тестирование совместимости. Это проверка работы веб-приложения в разных браузерах и на различных устройствах. Важно, чтобы взаимодействие с пользователем было одинаковым независимо от выбранной технологии, браузера или устройства. Курсы для QA | Дзен | YouTube

2
💬 Что такое assertEquals() в JUnit? assertEquals() — это метод в библиотеке #JUnit, который используется для проверки, что два объекта равны друг другу. Если они равны, тест проходит успешно. Если не равны, тест завершается с ошибкой, и мы увидим сообщение о том, что ожидаемое значение не совпало с фактическим. Если в автотестах мы проверяем метод, который должен возвращать определенное значение, можно использовать assertEquals, чтобы убедиться, что метод действительно возвращает то, что ожидаем. public class AssertEqualsTest { public int sum(int a, int b) { return a + b; } @Test public void testSum() { int result = sum(2, 3); // Проверяем, что результат сложения 2 и 3 равен 5 assertEquals(5, result, "2 + 3 должно быть равно 5"); } } Предположим, у нас есть простой метод sum(), который складывает два числа. Чтобы убедиться, что метод работает правильно, напишем для него простой тест. Внутри автотеста мы вызываем метод sum и сохраняем результат в переменную result. В методе assertEquals() мы проверяем, что результат равен 5. Если результат не равен 5, тест упадет, и мы увидим сообщение «2 + 3 должно быть равно 5». Вам больше нравится #TestNG? В моём курсе про TestNG на степике есть бесплатный урок. Если хотите больше узнать о возможностях TestNG вам сюда. Потом просто нажмите на кнопку 'Попробовать бесплатно'. Мини курс по Java | Дзен | YouTube
98
3
💬 Устранение избыточности с помощью DISTINCT. В #SQL DISTINCT позволяет исключить повторяющиеся значения из результата выпол
💬 Устранение избыточности с помощью DISTINCT. В #SQL DISTINCT позволяет исключить повторяющиеся значения из результата выполнения запроса SELECT. DISTINCT можно задать только один раз для данного запроса SELECT. Если он извлекает множество полей, тогда исключаются строки, в которых повторяются все выбранные поля. Строки, в которых некоторые значения совпадают, а другие отличаются, включаются в результат. DISTINCT фактически работает со всей строкой результата, а не с отдельными полями, предотвращая дублирование данных. Если нужно выяснить, какие фамилии присутствуют в нашей таблице, а полные данные вместе с адресами не имеют значения. Сейчас нам нужен лишь список фамилий. Нам необходимо ввести первую команду. Чтобы получить список без повторяющихся элементов, нужно добавить к ней ключевое слово DISTINCT. DISTINCT анализирует информацию, полученную в результате обработки данных, и удаляет повторяющиеся значения. Это эффективный метод для исключения избыточных данных. Курсы для QA | Дзен | YouTube
104
4
💬 Тестирование Web приложений. Как тестировщик, во время тестирования веб-сайта, вы проверяете его функциональность, пользов
💬 Тестирование Web приложений. Как тестировщик, во время тестирования веб-сайта, вы проверяете его функциональность, пользовательский интерфейс (UI) и пользовательский опыт (UX). Это основные моменты для удобной работы веб-сайта в интернете. Всё выглядит хорошо, и код готов к запуску, чтобы стать доступным всем пользователям. Однако через пару дней вы узнаёте, что кто-то проник на сайт и украл пользовательские данные. Это серьёзная проблема, которая может привести к краху всего бизнеса. Была ли ответственность за это на команде тестирования? Должны ли были они это предусмотреть? Да! Всё, что связано с веб-приложением, относится к тестированию web приложений. Оно также включает в себя безопасность веб-приложений, API, которые помогают в коммуникации, тестирование производительности и так далее. Даже если в одном браузере всё работает нормально, тестировщик должен проверить одинаковые функции в каждом из браузеров, которые являются целевыми для приложения. Мини курс по Java | Дзен | YouTube
127
5
💬 Поиск элемента по @id с помощью CSS селекторов. Ранее для поиска элемента на странице в Selenide мы использовали атрибут @id. Аналогичным образом мы можем найти элемент с помощью CSS селектора. Одно из преимуществ CSS-селекторов - это простота и читаемость. CSS-селекторы часто короче и понятнее, чем, например, XPath. В большем количестве браузеров CSS-селекторы работают быстрее, чем XPath. Рекомендуется использовать уникальные атрибуты. Старайся выбирать такие локаторы, которые точно указывают на один элемент. public class SelenideFirstTest { @Test void checkDropDownCss() { String url = "https://the-internet.herokuapp.com/dropdown"; open(url); SelenideElement element = $("#dropdown"); element.should(tagName("select")); } } В #Selenide для поиска элемента по id воспользуемся методом $. В параметре нужно передать CSS селектор с указанием идентификатора. В нашем тесте, после открытия страницы, мы сначала ищем элемент с идентификатором dropdown. Затем с помощью метода should проверяем имя тега у найденного элемента. Для этого передаём внутри should статический метод tagName, который содержит ожидаемое имя тега select. Тест пройдёт успешно, если имя тега с таким идентификатором на странице совпадёт с ожидаемым значением. Курсы для QA | Дзен | YouTube
129
6
💬 Провайдеры данных в отдельном классе. По мере того как вы будете расширять тестовое покрытие и увеличивать количество автотестов, вам может потребоваться вынести провайдер данных в отдельный класс. Это позволит создать более понятную структуру ваших автотестов и упростить повторное использование существующего провайдера данных в других тестах. public class NumbersProvider { @DataProvider(name = "numbers") public Object[][] dataProviderMethod() { return new Object[][] { {1, false}, {2, true} }; } } В этом примере в отдельном классе мы создадим специальный метод с аннотацией @DataProvider, который будет возвращать тестовые данные. Эти данные будут представлять собой число, за которым следует логическое значение: true, если число чётное, и false, если нечётное. public class DataProviderTest { @Test(dataProvider = "numbers") void checkOddOrEvenNumber(Integer number, Boolean result) { Assert.assertEquals(number % 2 == 0, result); } } В тестовом методе мы используем аннотацию @Test, чтобы указать имя созданного провайдера данных и класс, в котором он находится. Затем мы передаём данные из провайдера в тестовый метод через входные параметры. В теле метода мы проверяем, является ли число чётным, и сравниваем результат с ожидаемым значением с помощью assertEquals. Запустив наши тесты, мы убедимся, что оба они проходят успешно. В моём курсе про #TestNG на степике есть бесплатный урок. Если хотите больше узнать о возможностях TestNG вам сюда. Потом просто нажмите на кнопку 'Попробовать бесплатно'. Мини курс по Java | Дзен | YouTube
115
7
💬 Проверка массива на равенство. Сегодня мы рассмотрим, как в Rest Assured проверить, что массив равен ожидаемому. Это может быть полезно, когда в ответе мы получаем массив элементов и хотим убедиться, что он совпадает с ожидаемым значением. public class RestAssuredTest { @Test public void checkArrayEquals() { given(). baseUri("https://reqres.in/api"). when(). queryParam("page", 1). get("/users"). then().assertThat(). log().all(). body("data.id", Matchers.equalTo(List.of(1, 2, 3, 4, 5, 6))); } } В автотесте мы будем вызывать API для получения списка пользователей. После этого в консоль выведем результат этого запроса. Запустим тест и посмотрим, как выглядит ответ. В тесте хотим проверить, что массив идентификаторов в ответе совпадает с ожидаемым значением. Для проверки воспользуемся методом body. В первом параметре с помощью JsonPath указываем элемент, который хотим проверить. Чтобы получить идентификаторы объектов, нужно указать data.id. Во втором параметре используем equalTo из фреймворка Hamcrest, содержащий нужную проверку. С его помощью убедимся, что массив идентификаторов совпадает с ожидаемым. В аргументе передадим это значение, равное списку идентификаторов от 1 до 6. Если идентификаторы совпадают, тогда тест пройдет успешно. Запустим наш тест, чтобы в этом убедиться. В моём курсе про автотесты для #API, на степике есть бесплатный урок. Если хотите больше узнать о возможностях Rest Assured вам сюда. Потом просто нажмите на кнопку 'Попробовать бесплатно'. Курсы для QA | Дзен | YouTube
103
8
💬 Основы тестирования Web приложений В нашем технологическом мире веб-сайты используются повсюду. Для оплаты счетов или поку
💬 Основы тестирования Web приложений В нашем технологическом мире веб-сайты используются повсюду. Для оплаты счетов или покупки того, что вы давно хотели приобрести, нам всем может понадобиться веб-сайт. Еще до того, как попасть на эти веб-сайты, мы выполняем поиск по нашему запросу в Яндекс или Google, которые сами по себе являются веб-сайтами. Веб-тестирование включает в себя оценку функциональности, удобства использования, безопасности и производительности веб-приложения. Оно направлено на выявление и устранение проблем, мешающих эффективной работе приложения в различных браузерах, устройствах и сетях, и удобству взаимодействия с пользователем. Что касается пользователей, веб-сайты играют важную роль в их повседневной жизни. Как разработчики и тестировщики, мы считаем, что для поддержания бизнеса и привлечения пользователей к работе на нашем веб-сайте мы должны быть уверены, что со стороны пользователя все будет в порядке. Этого можно достичь с помощью веб-тестирования. Мини курс по Java | YouTube
118
9
💬 Проверка описания кода ответа. Сегодня мы напишем простой тест для проверки описания кода ответа в #Postman. В начале Http
💬 Проверка описания кода ответа. Сегодня мы напишем простой тест для проверки описания кода ответа в #Postman. В начале Http ответа от сервера находится стартовая строка. Она содержит версию протокола, статус код и его описание. В нашем примере мы хотим проверить успешный ответ от сервера. Мы ожидаем получить код ответа 200 OK. Добавим новый запрос и откроем вкладку Scripts. Там выберем Post-response. Будем проверять описание статус кода ответа. Для этого добавим новый тест. Первым параметром укажем строку, которая будет показана в результатах запуска. Далее добавим новую функцию. В ней мы с помощью метода pm.expect сделаем проверку. Нам нужно убедиться, что описание кода ответа в поле status объекта pm.response совпадает с ожидаемым значением OK. Сама проверка делается с помощью метода to.be.eql(). Запустим наш тест и посмотрим, как будут выглядеть результаты. Курс по Java | Дзен | YouTube
140
10
💬 Многомерные массивы. Сегодня поговорим о многомерных массивах в #Java. В Java многомерные массивы - это массивы массивов. Для того, чтобы объявить переменную многомерного массива используются дополнительные квадратные скобки. Например для объявления двумерного массива нам потребуется две пары квадратных скобок. public class Lesson_03_3 { public static void main(String[] args) { int[][] matrix = new int[5][4]; for (int i = 0; i < 5; i++) { for (int j = 0; j < 4; j++) { matrix[i][j] = i + j; System.out.print(matrix[i][j] + " "); } System.out.println(); } } } В этом примере мы создали двумерный массив matrix. В программе, происходит резервирование памяти для массива размерностью 3 на 4 элемента. Внутри эта матрица реализована как массив массивов значений типа int. Внутри циклов for каждому элементу массива присваивается сумма номеров его столбца и строки. Далее в программе делается вывод значения элемента массива в консоль. В итоге после выполнения программы массив будет выведен в виде таблицы. Мы сможем убедиться в этом, запустив нашу программу. В моём курсе про Java на Cтепике есть бесплатный урок. Если хотите больше узнать о возможностях этого языка программирования вам сюда. Мини курс по Java | Дзен | YouTube
137
11
💬 Что такое Playwright? Playwright — это тестовый фреймворк для автоматизации end-to-end сценариев, разработанный компанией
💬 Что такое Playwright? Playwright — это тестовый фреймворк для автоматизации end-to-end сценариев, разработанный компанией Microsoft. Он пользуется большой популярностью среди пользователей и является одним из часто используемых средств для автоматизации web тестирования. Playwright позволяет автоматизировать работу с браузерами построенными на движках Chromium, Gecko и WebKit с помощью единого API. Вы можете писать автотесты в Playwright, используя JavaScript, Java, Python и другие популярные языки программирования Основные возможности Playwright: 🔸 Возможность запускать тестовые сценарии в различных популярных браузерах, построенных на движках Chromium, WebKit и Gecko. 🔸 Совместимость с различными операционными системами, включая Windows, Mac OS и Linux, что делает её универсальным инструментом для автотестов. 🔸 Playwright позволяет тестировщикам взаимодействовать с элементами веб-сайта, что делает его важным инструментом для автоматизации различных аспектов веб-разработки. Мини курс по Java | YouTube
139
12
💬 Аннотация @AfterAll. Сегодня мы рассмотрим аннотацию @AfterAll в #JUnit. Как и @BeforeAll, она относится к аннотациям жизненного цикла теста. Эти аннотации позволяют добавить дополнительную логику, которая будет выполнена в нужный момент до или после запуска конкретного автотеста. Метод с такой аннотацией будет запущен только один раз после запуска всех тестов в данном классе. Как и в случае с @BeforeAll, метод с аннотацией @AfterAll должен быть статическим. Давайте посмотрим, как это работает на практике. public class LifeCycleTest { @Test void lifeCycleTest1(TestInfo testInfo) { System.out.printf("Test : %s\n", testInfo.getDisplayName()); } @Test void lifeCycleTest2(TestInfo testInfo) { System.out.printf("Test : %s\n", testInfo.getDisplayName()); } @AfterAll static void tearDown() { System.out.println("AfterAll"); } } Добавим метод с аннотацией @AfterAll. В нём будет только вывод информации в консоль в момент запуска. Чтобы показать порядок запуска, добавим в наш класс два теста. В каждом из них будет вывод названия теста. Для этого мы будем использовать объект TestInfo, содержащий информацию о тесте. Запустим тесты и посмотрим вывод в консоли. В результатах мы увидим, что были запущены два тестовых метода. После них был запущен метод с аннотацией @AfterAll только один раз. Вам больше нравится #TestNG? В моём курсе про TestNG на степике есть бесплатный урок. Если хотите больше узнать о возможностях TestNG вам сюда. Потом просто нажмите на кнопку 'Попробовать бесплатно'. Курс по Java | Дзен | YouTube
133
13
💬 Фильтрация данных в SELECT Таблицы могут содержать большое количество данных, а также увеличиваться по мере добавления нов
💬 Фильтрация данных в SELECT Таблицы могут содержать большое количество данных, а также увеличиваться по мере добавления новых строк. Язык #SQL позволяет задать критерий фильтрации данных при выборке. Он определяет, какие строки нужно включить в результат запроса. Оператор WHERE задаёт условие, которое будет истинным или ложным для каждой строки таблицы. Команда извлекает только те строки из таблицы, для которых условие истинно. С помощью предложения WHERE программа обработки базы данных просматривает таблицу строка за строкой и проверяет, истинно ли условие для каждой строки. Выведем все строки таблицы, с помощью первой команды. В результате видим 5 строк. После добавления в запрос условия WHERE, в результатах осталось только 2 строки. Столбец last_name включён в результат не потому, что он указан в предложении WHERE, а потому, что он указан в предложении SELECT. Столбец, используемый в предложении WHERE, необязательно будет среди столбцов в результате запроса. Курсы для QA | Дзен | YouTube
168
14
💬 Основы CI/CD - ч.3 🔸 Стабильная среда тестирования Код следует тестировать в отдельной версии production среды. Не стоит
💬 Основы CI/CD - ч.3 🔸 Стабильная среда тестирования Код следует тестировать в отдельной версии production среды. Не стоит тестировать новый код в production версии. Создайте её копию, максимально приближенную к реальной. Используйте подробные тестовые сценарии для поиска ошибок, которые могли возникнуть в ходе первоначального тестирования. 🔸 Максимальная наглядность Каждый разработчик должен иметь доступ к последней версии кода и видеть все изменения, внесённые в репозиторий. Используйте систему контроля версий для отслеживания изменений, чтобы разработчики знали, какая версия является актуальной. Максимальная наглядность позволяет каждому участнику команды отслеживать прогресс и выявлять потенциальные проблемы. 🔸 Предсказуемое развёртывание Развёртывания должны быть рутинными и мало рискованными, чтобы команда могла выполнять их в любое удобное время. Процессы CI/CD должны быть надёжными, чтобы команда могла быть уверена в развёртывании обновлений в любой момент. Мини курс по Java | Дзен | YouTube
171
15
💬 Поиск по имени тэга с помощью CSS селекторов. Еще один способ для поиска элемента на странице в #Selenide - это #CSS селекторы. Давай разберем, что это такое, простым языком. CSS (Cascading Style Sheets) — это язык, который используется для стилизации веб-страниц, но его селекторы также можно использовать для поиска элементов в автоматизированных тестах. <div class="large-6 small-12 columns large-centered"> <h3>Inputs</h3> <div class="example"> <p>Number</p> <input type="number"> </div> </div> В данном примере у нас есть заголовок, находящийся внутри тега h3. Его мы можем найти, используя CSS селектор по имени тега. Для поиска нужного элемента воспользуемся методом $. Обратите внимание, что здесь мы не используем методы класса By, а просто передаём строку, содержащую css селектор. public class SelenideFirstTest { @Test void checkInputsWithCss() { String url = "https://the-internet.herokuapp.com/inputs"; open(url); SelenideElement element = $("h3"); element.shouldHave(text("Inputs")); } } В нашем тесте, после открытия страницы, мы сначала ищем элемент с с именем тега 'h3'. Затем, с помощью метода shouldHave, проверяем текст у найденного элемента. Для этого передаём внутри should статический метод text, который содержит ожидаемый текст. Тест пройдёт успешно, если текст внутри элемента с таким именем тега на странице совпадёт с ожидаемым значением. Курс по Java | Дзен | YouTube
185
16
💬 Провайдер данных. Вам часто будут попадаться тестовые сценарии с одинаковой логикой и разными входными данными. Специально для этих случаев в #TestNG есть удобный способ параметризации автотестов с помощью DataProvider. Один и тот же тестовый метод будет использоваться несколько раз с разными наборами данных. Это сократит количество методов и облегчит поддержку в будущем. public class DataProviderTest { @DataProvider(name = "numbers") public Object[][] dataProviderMethod() { return new Object[][] { {1, false}, {2, true} }; } @Test(dataProvider = "numbers") void checkOddOrEvenNumber(Integer number, Boolean result) { Assert.assertEquals(number % 2 == 0, result); } } В этом примере мы создаём специальный метод и добавляем к нему аннотацию @DataProvider. Этот метод будет возвращать тестовые данные. Они представляют собой число, за которым следует логическое значение: true, если число чётное, и false, если нечётное. В тестовом методе мы используем аннотацию @Test, чтобы указать имя созданного провайдера данных. Затем мы передаём данные из провайдера в тестовый метод через входные параметры. В теле метода мы проверяем, является ли число чётным, и сравниваем результат с ожидаемым значением с помощью assertEquals. Запустив наши тесты, мы убедимся, что оба теста проходят успешно. В моём курсе про TestNG на степике есть бесплатный урок. Если хотите больше узнать о возможностях TestNG вам сюда. Потом просто нажмите на кнопку 'Попробовать бесплатно'. Курсы для QA | Дзен | YouTube
175
17
💬 Как проверить, равен ли элемент одному из указанных? Сегодня мы рассмотрим, как в #RestAssured проверить равенство элемента одному из указанных значений. Это может быть полезно, когда мы не знаем точного значения элемента, но известно, что оно точно принадлежит группе значений. public class RestAssuredTest { @Test public void checkPetStatus() { given(). baseUri("https://petstore.swagger.io/v2/"). when().log().all(). contentType(ContentType.JSON). queryParam("status", "pending", "sold"). get("pet/findByStatus"). then().log().all(). statusCode(200). body("status[0]", Matchers.oneOf("pending", "sold")); } } В данном примере мы используем #API для поиска по заданным статусам. Точно неизвестно, какой статус будет у первого элемента списка, но он точно должен быть одним из указанных в запросе. В тесте хотим проверить, что первый объект из списка имеет один из указанных в запросе статусов. Для проверки воспользуемся методом body. В первом параметре с помощью JsonPath указываем элемент, который хотим проверить. Чтобы проверить status первого объекта, нужно указать status[0]. Во втором параметре используем oneOf из фреймворка Hamcrest, содержащий нужную проверку. С его помощью убедимся, что значение статуса равно одному из указанных. В аргументе значения pending и sold. Если значение совпадёт с одним из указанных, тогда тест пройдет успешно. Запустим наш тест, чтобы в этом убедиться. В моём курсе про автотесты для #API, на степике есть бесплатный урок. Если хотите больше узнать о возможностях Rest Assured вам сюда. Потом просто нажмите на кнопку 'Попробовать бесплатно'. Курсы для QA | Дзен | YouTube
173
18
💬 Основные возможности Cypress. Вот несколько особенностей #Cypress, которые делают эту платформу очень хорошим инструментом
💬 Основные возможности Cypress. Вот несколько особенностей #Cypress, которые делают эту платформу очень хорошим инструментом для автоматизации тестирования: 🔸 Cypress предоставляет инструментарий для запуска тестов. С его помощью вы можете выполнять автоматизированные тесты прямо в своей локальной системе. Это позволяет получать быструю обратную связь во время разработки тестов. 🔸 Cypress поддерживает параллельный запуск тестов. Это означает, что вы можете значительно сократить время, необходимое для выполнения всего набора тестов. 🔸 Платформа может быть интегрирована с популярными инструментами CI/CD, такими как CircleCI и AWS CodeBuild. Это позволяет автоматизировать выполнение тестов в рамках вашего конвейера непрерывной интеграции. 🔸 Cypress автоматически ожидает, пока элементы на странице станут доступны. Это уменьшает необходимость в ручном ожидании внутри тестовых сценариев. 🔸 Если сценарий завершается неудачно, Cypress автоматически сохраняет скриншот страницы Мини курс по Java | Дзен | YouTube
185
19
💬 Добавление параметра в скриптах. Сегодня поговорим о том, как в Postman добавить новый query параметр в скриптах. Напомню,
💬 Добавление параметра в скриптах. Сегодня поговорим о том, как в Postman добавить новый query параметр в скриптах. Напомню, что в HTTP-запросах они представляют собой дополнительные данные, которые передаются в URL-адресе. Они используются для передачи на сервер параметров для фильтрации, поиска, сортировки и т.д. Query-параметры могут использоваться вместе с любым HTTP-методом. Наиболее часто они используются с методом GET. Добавим новый запрос. Он содержит один query параметр city. Откроем вкладку Scripts -> Pre-request. Напишем следующий код. С помощью метода addQueryParams, он добавит к запросу дополнительный параметр строки запроса. В строке мы передаём его имя и значение. Имя у него будет 'country', а значение 'ru'. Выполним запрос и откроем тело ответа. Как видим запрос был запущен с двумя параметрами. Курсы для QA | Дзен | YouTube
189
20
💬 Типы данных с дробной частью. Сегодня поговорим про типы данных с дробной частью в #Java. Существуют два таких типа данных: float и double. Они представляют числовые значения с одинарной и двойной точностью соответственно. Разрядность этих типов составляет 32 и 64 бита. Тип double употребляется чаще, чем float, т.к. используется во всех математических функциях библиотек Java. Например, метод Math.sqrt(), определенный в стандартном классе Math, который вычисляет квадратный корень, возвращает значение double. public class Lesson_02_2 { public static void main(String[] args) { // a*x^2 + b*x + c = 0 int a = 1; int b = -1; int c = -6; double d = b * b - 4 * a * c; // 1 double x1 = (-b + Math.sqrt(d)) / (2 * a); // 2 double x2 = (-b - Math.sqrt(d)) / (2 * a); // 3 System.out.printf("x1 = %s, x2 = %s", x1, x2); } } В этой программе мы будем вычислять корни квадратного уравнения. Метод sqrt() определен в классе Math, поэтому для вызова нужно указать его перед именем метода. Используя метод printf выведем корни уравнения в консоль. Запустим нашу программу и посмотрим её вывод. В моём курсе про Java на Cтепике есть бесплатный урок. Если хотите больше узнать о возможностях этого языка программирования вам сюда. Мини курс по Java | Дзен | YouTube
186