пятница, 7 июня 2024 г.

Ольга Назина. Книга "Что такое тестирование, курс молодого бойца"

Представлю содержание (основные без подзаголовков) книги, потом свой отзыв и мнение. 

Содержание

Пара слов от автора ................................................................ 18

Введение в тестирование ПО .................................................... 19

Что такое ПО? .............................................................................................. 20

Глава 1. Исследование продукта ............................................... 35

Что продукт умеет? ...................................................................................... 36

Как накидать тестов на что-нибудь? ........................................................... 40

Инструменты исследования ......................................................................... 55

Глава 2. Тест-кейсы и чек-листы ................................................ 65

Проектирование тестов ............................................................................... 66

Приоритеты выполнения тестов .................................................................. 68

Так как оформлять-то? ................................................................................. 77

Тест-кейсы .................................................................................................... 77

Чек-листы ................................................................................................... 124

Сравним тест-кейсы и чек-листы .............................................................. 141

Чит-листы ................................................................................................... 144

Глава 3. Классы эквивалентности и граничные значения ............. 147

Несколько вступительных слов ................................................................. 148

Классы эквивалентности ........................................................................... 152

Граничные значения ................................................................................... 158

Инструменты .............................................................................................. 163

Типичные ошибки ....................................................................................... 164

Глава 4. Анализ тестов ........................................................... 171

Разберемся с определениями .................................................................. 172

Как выкидывать лишние тесты? ................................................................. 17 4

Типичные ошибки ....................................................................................... 178

Техника pairwise .......................................................................................... 181

Глава 5. Баг-трекинг ............................................................... 185

Что такое баг? ............................................................................................ 186

Нашел баг; что дальше? ............................................................................. 188

Как заводить задачи в баг-трекер? ........................................................... 191

Локализация ошибок ................................................................................. 202

Оформление задач .................................................................................... 208

Типовые ошибки ......................................................................................... 224

Как закрывать задачи? ............................................................................... 227

Ретроспективный анализ ошибки, или Как анализировать пропущенные баги ..................................................................................... 230

Глава 6. Исследовательское тестирование ................................ 239

Глава 7. Тестирование документации ........................................ 257

Глава 8. Создание документации: тестовой и не только .............. 303

Глава 9. Классификация тестирования ...................................... 325

Глава 10. Автоматизация тестирования ..................................... 383

Глава 11. Организация процесса .............................................. 419

Глава 12. Как составить резюме? ............................................. 435

Глава 13. Собеседование ........................................................ 473

Глава 14. Куда развиваться? .................................................... 507

Глава 15. Всё обо всём ........................................................... 547

Заключение .......................................................................... 567

воскресенье, 11 февраля 2024 г.

Определение тестирования

Тестирование - проверка ПО (продукта) на соответствие требованиям (спецификации), а также ожиданиями бизнеса и пользователей, с целью обнаружения критичных ошибок.

пятница, 2 июня 2023 г.

Виды тестирования

Позитив - ввод валидных значений

Негатив - ввод не валидных значений

Позитив - тестирование по требованиям 

Негатив - тестирование не по требованиям

??? - ввод не валидных значений, описанных в требованиях

Позитив - объект делает то, что должен делать

Негатив - объект не делает того, что не должен делать

Позитив - объект выполняет свою функцию

Исследовательское тестирование - при отсутствии требований, для изучения продукта тестирования на основании опыта и пр. источников.

четверг, 1 июня 2023 г.

Техники тест-дизайна

Объединение теории по теме

Техники тест-дизайна - целью является максимальное покрытие с минимальным количеством тестов.

Методы:

Статические – без запуска кода (анализ кода, требований).

Динамические – запуск ПО.

Далее рассматриваются техники обеспечения качества, которые поделены на две группы соответственно: статические и динамические

четверг, 25 мая 2023 г.

SoapUI

SOAP  - начало знакомства здесь https://dmitrybvita.blogspot.com/2022/02/soap.html

Статьи

SoapUI: тестирование SOAP и REST API

Что такое API

По стандартному определению, «программный интерфейс приложения», программный «посредник» между приложениями. API состоит из набора правил взаимодействия, описывающих как приложение работает с другими приложениями. Иначе говоря, API — это механизм обмена данными (функциями) между приложениями.

Когда приложению нужны данные из другого приложения (или нужно отправить свои данные в другое приложение), происходит взаимодействие через API. Чаще всего приложению нужно запросить срабатывание сервиса (то есть какой-то «внешней функции») другого приложения. Суть API — не в взаимодействии с пользователем через пользовательский интерфейс, а в взаимодействии на уровне программа-программа.

Тестирование API

пятница, 19 мая 2023 г.

Инструменты для тестирования

Источник: https://habr.com/ru/articles/694696/

Инструменты

Я надеюсь, вы чувствуете, как машина тестирования завелась, и вам стало чуть проще.

Мне хочется дополнить свои рекомендации инструментами, которые пригодятся вам в работе:

Генератор одноразовых email https://temp-mail.org. Может понадобиться при проверке отображения формата письма для клиента. 

Калькулятор дней https://calcsoft.ru/calculator-dney, если нужно проверить промо-акции или опросы, когда есть необходимость задать граничное значение истечения срока.

Бесплатные SMS http://smsget.net/free/ru/. Полезно для тестирования авторизации.

Генераторы штрих-кодов и QR-кодов https://barcode.tec-it.com/ru. Может понадобиться при тестировании складских процессов или маркированной продукции.

Генератор валидных ИНН https://mellarius.ru/random-data. Его используют, например, для создания аккаунтов организаций, юр.лиц.

Json Viewer для проверки структуры json. https://jsonpathfinder.com/.

XML Viewer для проверки структуры XML https://codebeautify.org/xmlviewer

Md5 декодер http://www.online-decoder.com/ru.

Генераторы больших числовых или текстовых значений. С пробелами и без. Расширение Bug Magnet https://chrome.google.com/webstore/detail/bug-magnet/efhedldbjahpgjcneebmbolkalbhckfi. Очень полезная вещь при проверке граничных значений.

Тестовые карты Сбербанк https://securepayments.sberbank.ru/wiki/doku.php/test_cards Необходимы для тестирования оплат на тестовых контурах.

Все это вы можете найти на просторах интернета и не изобретать велосипед самостоятельно.

среда, 17 мая 2023 г.

Git и GitHub

Источник: https://blog.skillfactory.ru/glossary/git/

Git (читается как «гит») — это система контроля версий, которая помогает отслеживать историю изменений в файлах. Git используют программисты для совместной работы над проектами.

Git — система контроля версий

В самом простом виде контроль версий — это сохранение на компьютере серии измененных файлов.
Разработчикам часто бывает нужно вернуться к предыдущей версии кода.
Если над проектом работает много людей, нужно, чтобы они могли вносить изменения в одни и те же файлы без конфликтов и потерь кода. Все эти задачи удобно решаются с помощью Git.

пятница, 12 мая 2023 г.

Интернет и WWW

Всё из Вики

Интернет - информационно-коммуникационная сеть и всемирная система объединённых компьютерных сетей для хранения и передачи информации.

Построена на базе стека протоколов TCP/IP. На основе Интернета работает Всемирная паутина (World Wide Web, WWW) и множество других систем передачи данных.

TCP/IP — сетевая модель передачи данных, представленных в цифровом виде. Модель описывает способ передачи данных от источника информации к получателю. В модели предполагается прохождение информации через четыре уровня, каждый из которых описывается правилом (протоколом передачи). Наборы правил, решающих задачу по передаче данных, составляют стек протоколов передачи данных, на которых базируется Интернет. Название TCP/IP происходит из двух важнейших протоколов семейства — Transmission Control Protocol (TCP) и Internet Protocol (IP), которые были первыми разработаны и описаны в данном стандарте.

среда, 19 апреля 2023 г.

Операционные системы

 Операционные системы


1. Компьютер и операционная система
2. Эволюция ОС — фундаментальные проблемы и слои абстракции
3. Представление и обработка процессов — структуры данных и очереди
4. Треды, SMP и микроядро
5. Несколько процессов в одной системе. Взаимное исключение. Семафоры. Проблема чтения/записи.
6. Дедлок и проблема обедающих философов
7. Организация памяти и виртуальная память
8. Планирование выполнения задач и диспетчеризация
9. Ввод и вывод

Операционные системы, урок 1: Что такое компьютер и операционная система


вторник, 18 апреля 2023 г.

XAMPP

XAMPP

XAMPP — бесплатный кроссплатформенный дистрибутив для сборки локального веб-сервера. Содержит Apache, MariaDB, язык программирования Perl, интерпретатор скриптов PHP и дополнительные библиотеки. Имеет открытый исходный код, простой в установке и использовании.

Что включает в себя XAMPP

В сборке содержатся все компоненты, необходимые для комфортного использования. Они работают сообща.

  • Apache2 — веб-сервер, который поддерживают все операционные системы (Mac, Linux, Windows);
  • MariaDB — база данных, аналог MySQL;
  • PHP — интерпретатор PHP, используется актуальная стабильная версия;
  • Perl — язык программирования. В XAMPP входит его реализация под названием Strawberry Perl;
  • phpMyAdmin — веб-интерфейс для управления сайтом и базой данных, выглядит как простая веб-страница, открывается в браузере;
  • OpenSSL — библиотека для работы с SSL (для HTTPS);
  • XAMPP Control Panel — панель управления XAMPP, через которую происходит запуск, остановка и настройка компонентов. С помощью XAMPP Control Panel можно быстро получить доступ к различным конфигурационным и лог-файлам;
  • Webalizer — программа для чтения логов веб-сервера, генерирует HTML-страницу со статистикой работы веб-сервера и событиями;
  • Mercury Mail Transport System — почтовый сервер;
  • FileZilla FTP Server — файловый сервер;
  • Tomcat — контейнер серверов, используется для разработки на Java.

понедельник, 17 апреля 2023 г.

Putty, Telnet, SSH

https://ru.wikipedia.org/wiki/PuTTY

PuTTY (/ˈpʌti/, Пати) — свободно распространяемый клиент для различных протоколов удалённого доступа, включая SSH, Telnet, rlogin. Также имеется возможность работы через последовательный порт.

PuTTY позволяет подключиться и управлять удаленным узлом (например, сервером). В PuTTY реализована только клиентская сторона соединения — сторона отображения, в то время как сама работа выполняется на стороне сервера.

среда, 5 апреля 2023 г.

UML

На каком языке рисуют схемы: что такое UML и почему его понимают во всём мире

Для наглядного изображения процессов и явлений используют схемы, но под одним и тем же символом люди могут иметь в виду разное. Чтобы исключить разночтения, разработали стандарт UML.

Что такое язык UML

UML (от англ. Unified Modeling Language) переводится как «унифицированный язык моделирования». Это графический язык, в котором каждой фигуре, символу, стрелке или их сочетаниям присвоены конкретные значения. Он позволяет визуализировать явление или процесс так, чтобы схема была понятна всем, кто знаком с UML.

Можно сказать, что UML — это набор правил, по которым нужно рисовать схемы. 

понедельник, 13 марта 2023 г.

Логи

Статьи

Логи сервера

Логи — это текстовые файлы, в которых хранится информация о пользователях, их взаимодействии с сервером, а также системная информация о работе сервера. Логи формируются в автоматическом режиме и сохраняются в хронологическом порядке. Поэтому их также называют журналом сервера (Server Logs).

Можно выделить несколько основных типов логов:

  • сведения о каждом обращении (IP-адрес и тип браузера посетителя) — access_log,
  • протоколы действий каждого посетителя (из какого источника перешел на сайт, сколько на нём находился, какие совершал операции и другое),
  • записи о сбоях и ошибках — error_log,
  • записи о входящих и исходящих сообщениях — почтовые логи,
  • сведения о загрузках и основные события в системе,
  • данные о количестве входов по FTP-соединению,
  • данные о действиях с файерволом, DNS-сервером, ядром системы,
  • статистика использования ресурсов сервера, время и количество входов в панель, обновление лицензии.

вторник, 7 марта 2023 г.

Системы мониторинга - Zabbix, Grafana, Kibana

Основы мониторинга

Мониторинг в ИТ сегодня – это система, которая позволяет в режиме реального времени выявлять проблемы в ИТ инфраструктуре, а также оценивать тренды использования ресурсов. 

Как правило состоит из нескольких базовых компонентов – сбора сырых данных, обработки данных с целью их анализа, рассылки уведомлений и пользовательского интерфейса для просмотра графиков и отчетов. 

В настоящее время существует большое количество систем для мониторинга различных категорий – сети, серверной инфраструктуры, производительности приложений (APM), реального пользователя (RUM), безопасности и др. 

Таким образом, мониторить можно все – от сетевой доступности узлов в огромной корпорации до значений датчика температуры в спальне в «умном» доме.

пятница, 3 марта 2023 г.

API

Варианты перевода application programming interface - интерфейс программирования приложений или программный интерфейс приложения.

Вот здесь вот https://habr.com/ru/post/464261/ простым языком описывается. + видео на эту же тему от того же автора https://www.youtube.com/watch?v=QYg5z6EGOk4 - с примерами применения. 

API (Application programming interface) — это контракт, который предоставляет программа. «Ко мне можно обращаться так и так, я обязуюсь делать то и это».

Контракт, который рассказывает о том, как мы можем общаться с этой системой.

четверг, 2 марта 2023 г.

JSON

Начало знакомства https://dmitrybvita.blogspot.com/2022/02/json.html

https://ru.wikipedia.org/wiki/JSON
JSON  — текстовый формат обмена данными, основанный на JavaScript.

Более лаконичен по сравнению с XML.

JSON-текст представляет собой (в закодированном виде) одну из двух структур:

  • Набор пар ключ: значение.
  • Упорядоченный набор значений.

В качестве значений в JSON могут быть использованы:

  • запись — это неупорядоченное множество пар ключ:значение, заключённое в фигурные скобки «{ }». Ключ описывается строкой, между ним и значением стоит символ «:». Пары ключ-значение отделяются друг от друга запятыми.
  • массив (одномерный) — это упорядоченное множество значений. Массив заключается в квадратные скобки «[ ]». Значения разделяются запятыми. Массив может быть пустым, то есть не содержать ни одного значения. Значения в пределах одного массива могут иметь разный тип.
  • число (целое или вещественное).
  • литералы true (логическое значение «истина»), false (логическое значение «ложь») и null.
  • строка — это упорядоченное множество из нуля или более символов юникода, заключённое в двойные кавычки. Символы могут быть указаны с использованием escape-последовательностей, начинающихся с обратной косой черты «\» (поддерживаются варианты \", \\, \/, \t, \n, \r, \f и \b), или записаны шестнадцатеричным кодом в кодировке Unicode в виде \uFFFF.

JSON Schema — один из языков описания структуры JSON-документа. Использует синтаксис JSON.

вторник, 28 февраля 2023 г.

Языки разметки: XML

 Для начала хорошо бы познакомиться с родоначальником и историей возникновения

https://ru.wikipedia.org/wiki/Язык_разметки

Статьи:

Что такое XML

XML нужен для работы с техническим текстом, где всё строго, упорядоченно и логично.

Смысл XML в том, чтобы выстроить внутри документа логическую структуру.

Сила XML

Сила XML в том, что данные здесь представляются как обычный текст, размеченный тегами (как в HTML). Файлики получаются маленькими, из легко обрабатывать.

И ещё сила XML в том, что эти данные может прочитать и обработать компьютер. Для сравнения: если скормить компьютеру схему, нарисованную в графическом редакторе, он её не поймёт.

Если XML хорошо составлен, его также может понять человек.

понедельник, 13 февраля 2023 г.

Языки разметки: html+css

Бесплатный курс от Хекслет "Основы современной верстки"

Введение в HTML

Что такое HTML

HTML (HyperText Markup Language) — язык для разметки гипертекста, он является набором правил, по которым браузер отличает заголовки от списков, таблицы от картинок и так далее. 

Элемент - это общее понятие = тег с его атрибутом и контентом внутри.

Тег - просто конструкция.

Атрибут - это специальная конструкция позволяющая указать дополнительную информацию о теге или его характеристиках и настройках.

пятница, 3 февраля 2023 г.

Сокет и порт

Продолжаем разбираться в терминах

Статьи

Из Вики, чтобы было перед глазами: Уровни модели OSI

Модель
Уровень (layer)Тип данных (PDU[15])ФункцииПримерыОборудование
Host
layers
7. Прикладной (application)ДанныеДоступ к сетевым службамHTTPFTPPOP3SMTPWebSocketХосты (клиенты сети),

Межсетевой экран

6. Представления (presentation)Представление и шифрование данныхASCIIEBCDICJPEGMIDI
5. Сеансовый (session)Управление сеансом связиRPCPAPL2TPgRPC
4. Транспортный (transport)Сегменты

(segment) /Датаграммы (datagram)

Прямая связь между конечными пунктами и надёжностьTCPUDPSCTPПорты
Media[16]
layers
3. Сетевой (network)Пакеты (packet)Определение маршрута и логическая адресацияIPv4IPv6IPsecAppleTalkICMPМаршрутизаторСетевой шлюз,

Межсетевой экран

2. Канальный (data link)Биты (bit)/
Кадры (frame)
Физическая адресацияPPPIEEE 802.22EthernetDSLARPсетевая карта.Сетевой мостКоммутатор,

точка доступа

1. Физический (physical)Биты (bit)Работа со средой передачи, сигналами и двоичными даннымиUSBRJ («витая пара», коаксиальный, оптоволоконный), радиоканалКонцентратор,

Повторитель (сетевое оборудование)


Сети и протоколы

Видео

Курс Андрея Созыкина

Лекции Компьютерные сети, учебный курс. просмотрено

Практика Практики по компьютерным сетям  не просмотрено 

Сам курс на авторском сайте и презентации к лекциям

Компьютерные сети. Продвинутые темы не просмотрено 

Защищенные сетевые протоколы не просмотрено 

вторник, 31 января 2023 г.

Браузеры и запросы

Что такое HTTP и зачем он нужен

Просто и понятно всё описано

HTTP-запросы: структура, методы, строка статуса и коды состояния

HTTP-сообщения: запросы и ответы

Данные между клиентом и сервером в рамках работы протокола передаются с помощью HTTP-сообщений. Они бывают двух видов:

  • Запросы (HTTP Requests) — сообщения, которые отправляются клиентом на сервер, чтобы вызвать выполнение некоторых действий. Зачастую для получения доступа к определенному ресурсу. Основой запроса является HTTP-заголовок.
  • Ответы (HTTP Responses) — сообщения, которые сервер отправляет в ответ на клиентский запрос.

Само по себе сообщение представляет собой информацию в текстовом виде, записанную в несколько строчек.

пятница, 13 января 2023 г.

devtools

Ряд статей

Введение в chrome devtools. Панель elements (https://htmlacademy.ru/blog/soft/chrome-devtools-1)

Расположение панелей

В правом верхнем углу находится кнопка (три точки), которая отвечает за расположение панелей. DevTools может находиться снизу, слева, справа, а ещё мы можем открепить отладчик и работать с ним в отдельном окне.

Вкладка Elements

С её помощью можно отслеживать элементы и их свойства на странице, можно редактировать стили.

понедельник, 2 января 2023 г.

SQL - основы

БД и СУБД: https://dmitrybvita.blogspot.com/2022/02/blog-post_8.html

SQL 

SQL — это структурированный язык запросов, созданный для того, чтобы получать из базы данных необходимую информацию. Если описать схему работы SQL простыми словами, то специалист формирует запрос и направляет его в базу. Та в свою очередь обрабатывает эту информацию, «понимает», что именно нужно специалисту, и отправляет ответ.

Данные хранятся в виде таблиц, они структурированы и разложены по строкам и столбцам, чтобы ими легче было оперировать. Такой способ хранения информации называют реляционными базами данных (от англ. relation — «отношения»). Название указывает на то, что объекты в такой базе связаны определенными отношениями.

Для чего нужен SQL

SQL — это не язык программирования, поэтому написать приложение или сайт с его помощью не получится, но при этом внутренняя работа сайта (backend) невозможна без запросов. 

Как работают запросы

Чтобы разобраться, как именно работает магия запроса, давайте представим его путь от пользователя до нужных ему данных:

Пользователь → Клиент → Запрос → Система управления → База данных → Таблица с базами данных

Данные для работы с SQL хранятся в таблицах. Как именно они устроены — разберемся ниже; пока же просто представим их. На пути от пользователя к таблице находится несколько посредников:

  • Клиент — способ введения запроса. В случае с Google, например, клиентом будет поисковая строка браузера, в которую пользователь вводит сформулированный запрос.
  • Система управления базами данных (СУБД) — комплекс программ, которые позволяют управлять данными. Эта система помогает таблицам понять, чего хочет пользователь, а пользователю — что ему отвечают таблицы.
  • База данных — система хранения таблиц, в которой они связаны между собой. База данных сама по себе не умеет манипулировать информацией — это просто хранилище, где у каждого объекта есть свое место.

Что такое база данных в SQL

SQL-запросы обращаются к данным в виде таблиц, то есть к реляционным базам данных. Упрощенный вариант такой базы — это таблицы Excel, в которых информация также упорядочена в столбцы и строки.

Основные понятия реляционной модели:

1. Отношение — это сама таблица, она двумерная и состоит из столбцов и строк.

2. Атрибут — столбец в таблице, который содержит один конкретный параметр: название, тип, дату, стоимость или другую характеристику.


3. Домен — это допустимые значения для каждого атрибута. Например, в столбце «Имя» или «Название» значения должны представлять собой набор буквенных символов, но они не могут начинаться с «ь» или «ъ» и не могут быть записаны числами.

4. Кортеж (строка или запись) — это табличная строка с порядковым номером, в которой содержится информация об одном конкретном объекте.


5. Значение — элемент таблицы, который находится на пересечении столбцов и строк.

6. Ключ — это самый важный столбец в таблице, за счет этих значений и происходит взаимодействие в реляционной базе данных, он связывает таблицы между собой.


Ключи бывают нескольких видов:
  • Первичный ключ — идентификатор, такой как индекс или артикул.
  • Потенциальный ключ — другое уникальное значение, которое может служить идентификатором.
  • Внешний ключ — столбец-ссылка, используется для объединения двух таблиц, каждое значение внешнего ключа обязательно соответствует первичному ключу в другой таблице.

SQL-операторы

Работать с данными помогают операторы — определенные слова или символы, которые используются для выполнения конкретной операции — например, для выбора из множества по конкретному параметру. Если нам нужно из всех видов пиццы отсортировать те, в которых есть пармезан, — нужно использовать оператор SELECT (выбор в соответствии с условием).

Операторы в SQL делятся на несколько групп в соответствии с задачами, которые они решают.

DDL (Data Definition Language) — операторы определения данных. Они работают с объектами, то есть с целыми таблицами. Если базу нужно дополнить таблицей с новыми данными или, наоборот, убрать одну из таблиц с ошибочными данными — используется этот набор операторов.
  • CREATE — создание объекта в базе данных
  • ALTER — изменение объекта
  • DROP — удаление объекта

DML (Data Manipulation Language) — операторы манипуляции данными. Эти операторы уже работают с содержимым таблиц — строками, атрибутами и значениями. С их помощью можно вносить изменения в конкретное значение. Например, заменить поле в колонке «Фамилия» в строке с данными сотрудницы компании посте того, как она вышла замуж. Или удалить строку с данными уволенного сотрудника.
  • SELECT — выбор данных в соответствии с условием
  • INSERT — добавление новых данных
  • UPDATE — изменение существующих данных
  • DELETE — удаление данных

DCL (Data Control Language) — оператор определения доступа к данным. Он определяет, кто из пользователей может отправлять запросы к базе, менять объекты и значения. Например, можно отозвать доступ у сотрудника, перешедшего в другой отдел, а также открыть доступ к базе новому маркетологу или разработчику.
  • GRANT — предоставление доступа к объекту
  • REVOKE — отзыв ранее выданного разрешения
  • DENY — запрет, который является приоритетным над разрешением

TCL (Transaction Control Language) — язык управления транзакциями. Транзакции — это набор команд, которые выполняются поочередно. Если все команды выполнены, транзакция считается успешной, а если где-то произошла ошибка — транзакция откатывается назад, отменяя все выполненные команды. Наглядный пример такой транзакции — оплата онлайн, когда банк просит сначала ввести сумму и получателя, затем проверить и подтвердить операцию, а после ввести одноразовый код. На каждом из этих этапов оплату можно отменить и транзакция откатится назад.
  • BEGIN TRANSACTION — обозначение начала транзакции
  • COMMIT TRANSACTION — изменение команд внутри транзакции
  • ROLLBACK TRANSACTION — откат транзакции
  • SAVE TRANSACTION — указание промежуточной точки сохранения внутри транзакции

Виды СУБД

Сами по себе таблицы или база данных не способны выполнять операции, а в СУБД можно создавать новые таблицы, удалять ненужные данные, настраивать ключи и обрабатывать запросы. Основные задачи СУБД:

  • поддержка языков баз данных;
  • непосредственное управление данными;
  • управление буферами оперативной памяти;
  • управление транзакциями;
  • резервное копирование и восстановление после сбоев.
PostgreSQL — это объектно-ориентированная система, то есть она обрабатывает данные как абстрактные объекты. Каждый объект, в отличие от простых табличных значений, может иметь собственные характеристики и уникальные методы взаимодействия с другими объектами. Это позволяет PostgreSQL обрабатывать более сложные структуры данных и выполнять более сложные процедуры. Например, Яндекс.Почта в свое время перешла на эту систему, чтобы поддерживать стабильное соединение десятков тысяч пользователей к одной базе.

Как начать работу с SQL

Для начала работы с SQL достаточно разбираться в основах Excel, чтобы понимать принцип работы запросов, а также иметь базовый уровень английского на уровне A1-A2. Эти навыки необходимы, чтобы понимать синтаксис SQL:

  • SELECT — выбери данные
  • FROM — вот отсюда
  • JOIN — добавь еще эти таблицы
  • WHERE — при таком условии
  • GROUP BY — сгруппируй данные по этому признаку
  • ORDER BY — отсортируй данные по этому признаку
  • LIMIT — нужно такое количество результатов
  • ; — конец предложения

Системы для работы с SQL имеют схожую структуру: есть редактор запросов, результат запросов и список таблиц, которые используются для обработки.

четверг, 24 ноября 2022 г.

понедельник, 21 ноября 2022 г.

Техники тест-дизайна. Методы тестирования "черного ящика"

По материалам ранее изученной информации и по переводу книги Ли Копланда “A Practitioner's Guide to Software Test Design”. Автор перевода:​ Уфимцева Галина

Анализ классов эквивалентности
Анализ граничных значений
Доменное тестирование
Таблицы принятия решений
Состояний и переходов
Попарное тестирование

среда, 12 октября 2022 г.

Тестирование производительности

1 Обзор

1.1 Что такое производительность и что значит быстро

Тестирование производительности

Общие принципы

Тестирование - это исследование системы с целью получения информации о качестве и предоставлении этой информации заинтересованным лицам.

пятница, 2 сентября 2022 г.

Курс младшего тестировщика (на основе краткого курса тестирования). Тема 1.Введение в профессию

Тема 1.Введение в профессию

Что изучить:
  1. Основные знания и умения тестировщика:
  2. Вводная
  3. Таблица знаний и умений тестировщика
  4. ФТ
  5. Нефункциональное тестирование
  6. Багтрекинг
Узнать:
  1. Что такое тестирование?
    • Цели тестирования
    • Этапы тестирования
    • Этика
  2. Градация тестировщиков в компании
  3. Какие виды тестирования бывают?
  4. Разницу между функциональным тестированием и нефункциональным
  5. Заведение дефектов в баг-трекере
    • локализация дефекта
    • Priority/Severity дефекта
    • жизненный цикл дефекта

четверг, 4 августа 2022 г.

Роман Савин, книга, "Тестирование дот ком"

От себя

Моё мнение о книге не поменялось. Можете найти по тэгам. Это укороченное содержание книги. Плюс я изменил структуру, сделал, на мой взгляд, более последовательной.

Что такое баг
Цель тестирования
Тестирование и QA (Quality Assurance)
Цикл разработки ПО

Цикл тестирования ПО
Классификация видов тестирования

Искусство создания тест-кейсов
Test Estimation (тест-смета)
Entry/Exit Criteria (критерий начала/завершения)
Test Plan (тест-план)

Подготовка к тестированию
Исполнение тестирования

Навыки и знания тестировщика

среда, 22 июня 2022 г.

Авторизация и аутентификации

https://thecode.media/autorize/

https://www.kaspersky.ru/blog/identification-authentication-authorization-difference/29123/

Идентификация — процедура, в результате выполнения которой для субъекта идентификации выявляется его идентификатор, однозначно определяющий этого субъекта в информационной системе.

Аутентификация — процедура проверки подлинности, например проверка подлинности пользователя путем сравнения введенного им пароля с паролем, сохраненным в базе данных.

Авторизация — предоставление определенному лицу или группе лиц прав на выполнение определенных действий.

Если коротко, то вот




четверг, 9 июня 2022 г.

Тестирование. 2-ой уровень

Вводная от себя

К сожалению информация во втором уровне оказалась крайне не последовательная, слабо структурированная и местами вообще непонятная. Не объясняются базовые понятия, которые заложены в названиях глав (уроков).
Поэтому придется искать дополнительную информацию и добавлять её к материалу.

Тест-анализ. Исследование ПО.

Материалы курса 2-го уровня.

Система - множество модулей, взаимосвязанных между собой, выполняют взаимосвязанные функции и решают задачи пользователя.


Анализ системы помогает изучить систему, основывается на изучении составных частей системы. 

вторник, 31 мая 2022 г.

Тестирование. 1-ый уровень

Этот пост тесно связан с этим https://dmitrybvita.blogspot.com/2021/07/blog-post_83.html 

Тестирование

Тест анализ -> тест дизайн -> тестирование


Цель тестирования - найти ошибки, до того как их найдет пользователь; находить как можно больше ошибок; находить критичные ошибки.

вторник, 17 мая 2022 г.

SQL и PostgreSQL

SQL и PostgreSQL

База данных (БД) – набор взаимосвязанных данных

Система управления базами данных (СУБД) – комплекс программных средств для управления данными

СУБД отвечает за: поддержку языка БД, механизмы хранения и извлечения данных, оптимизацию процессов извлечения данных и т.д.

Типы СУБД:

Файл-серверные (Microsoft Access) – файлы данных располагаются централизовано н файл-сервере, а система управления на каждом клиентском ПК. Плюсы: низкая нагрузка на процессор файл-сервера; минусы: высокая загрузка локальной сети и невозможность обеспечения таких характеристик: высокая надежность, доступность, безопасность.

Клиент-серверные (MySql, PostgreSQL) – и СУБД и сама БД располагаются на сервере, а к ним осуществляется доступ удаленно с клиентских машин и все клиентские запросы обрабатываются централизовано СУБД.

Встраиваемые (SQLite).

Клиент-серверные: MySql, PostgreSQL, MS SQL, ORACLE – все они реляционные и поддерживают язык SQL.

Structured Query Language (SQL) — язык структурированных запросов

вторник, 3 мая 2022 г.

SQL (DDL, DML) (часть вторая)

Источник: https://habr.com/ru/post/255523/

Учебник по языку SQL (DDL, DML) на примере диалекта MS SQL Server. Часть вторая

DML – Data Manipulation Language (язык манипулирования данными)

Т.к. DML в диалекте БД MS SQL очень сильно связан с синтаксисом конструкции SELECT, то я начну рассказывать о DML именно с нее. На мой взгляд конструкция SELECT является самой главной конструкцией языка DML, т.к. за счет нее или ее частей осуществляется выборка необходимых данных из БД.

Язык DML содержит следующие конструкции:
  • SELECT – выборка данных
  • INSERT – вставка новых данных
  • UPDATE – обновление данных
  • DELETE – удаление данных
  • MERGE – слияние данных
В данной части, мы рассмотрим, только базовый синтаксис команды SELECT, который выглядит следующим образом:

SELECT [DISTINCT] список_столбцов или *
FROM источник
WHERE фильтр
ORDER BY выражение_сортировки

SQL (DDL, DML) (часть первая)

  https://habr.com/ru/post/255361/

Учебник по языку SQL (DDL, DML) на примере диалекта MS SQL Server. Часть первая

Язык SQL подразделяется на несколько частей, здесь я рассмотрю 2 наиболее важные его части:

DDL – Data Definition Language (язык описания данных)

DML – Data Manipulation Language (язык манипулирования данными), который содержит следующие конструкции:

  • SELECT – выборка данных
  • INSERT – вставка новых данных
  • UPDATE – обновление данных
  • DELETE – удаление данных
  • MERGE – слияние данных

Немного теории

Реляционная база данных (РБД, или далее в контексте просто БД) представляет из себя совокупность таблиц, связанных между собой. Если говорить грубо, то БД – файл в котором данные хранятся в структурированном виде.

СУБД – Система Управления этими Базами Данных, т.е. это комплекс инструментов для работы с конкретным типом БД (MS SQL, Oracle, MySQL, Firebird, …).

Для каждой таблицы, как и ее столбцов задаются наименования, по которым впоследствии к ним идет обращение.

SQL — язык позволяющий осуществлять запросы в БД посредством СУБД. В конкретной СУБД, язык SQL может иметь специфичную реализацию (свой диалект).

DDL и DML — подмножество языка SQL:

  • Язык DDL служит для создания и модификации структуры БД, т.е. для создания/изменения/удаления таблиц и связей.
  • Язык DML позволяет осуществлять манипуляции с данными таблиц, т.е. с ее строками. Он позволяет делать выборку данных из таблиц, добавлять новые данные в таблицы, а так же обновлять и удалять существующие данные.

понедельник, 25 апреля 2022 г.

MySql

Введение

БД – хранилище информации, с которым можно работать с помощью компьютера.

СУБД – набор программ, с помощью которых управлять созданием и использованием БД.

Основные функции СУБД:
  1. управление данными на внешней памяти (на дисках) (как хранятся данные в файловой системе, сколько там файлов, как они представлены);
  2. управление данными в оперативной памяти с использованием дискового кэша;
  3. журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
  4. поддержка языков БД (язык определения БД, язык манипулирования данными).
Реляционные базы данных
  • Relation – отношения
  • Данные хранятся в таблице
  • Таблицы взаимосвязаны друг с другом (между ними присутствуют некоторые отношения)
  • Язык SQL
SQL – structured query language – язык структурированных запросов. С его помощью можно создавать, изменять и управлять данными. 

Основы языка запросов SQL


"

Основы языка запросов SQL

SELECT – оператор языка SQL, относится к группе операторов манипуляции данными (Data Manipulation Language, DML) и служит для выборки данных из базы данных.

Вот самый простой пример использования оператора SELECT.

  SELECT * FROM Table

где,
  • * — показать все данные;
  • FROM — из источника;
  • Table — название источника (в нашем случае таблица).
Но, на практике, зачастую нам нужны не все данные из таблицы, а иногда только некоторые колонки, для этого просто указываем вместо * название нужной колонки (или колонок), например:

   SELECT Price FROM Table
где, Price и есть название колонки.

Примечание! В качестве примера мы используем простую таблицу с перечислением моделей компьютеров, их ценой и названием.

Если Вам нужно указать несколько колонок, то просто перечисляйте их через запятую после оператора SELECT, например


  SELECT price, name, model
  FROM Table
где,  price, name, model это колонки из таблицы Table.

DDL, DML, DCL и TCL


"
Structured Query Language (SQL) — язык структурированных запросов

... язык SQL представляет собой набор операторов, которые делятся на определенные группы. В сокращенном виде эти группы называются DDL, DML, DCL и TCL.
"
  • Data Definition Language (DDL) – это группа операторов определения данных.
  • Data Manipulation Language (DML) – это группа операторов для манипуляции данными.
  • Data Control Language (DCL) – группа операторов определения доступа к данным
  • Transaction Control Language (TCL) – группа операторов для управления транзакциями.
А теперь по порядку:

суббота, 26 февраля 2022 г.

БД. Уроки по SQL

Источник: https://bugza.info/uroki-po-sql/ - не понятно, что является первоисточником. Но опять местами есть проблемы с пониманием из-за явных ошибок при переводе. Местами что-то исправил, что-то оставил как есть.

От начала и до конца копипаст, с незначительными корректировками от себя. 

"

SQL как и другие языки программирования имеет свои команды (операторы), с помощью которых отдаются инструкции для выборки данных.

вторник, 8 февраля 2022 г.

БД

 Перехожу к изучению БД.

Читаю лекции https://siblec.ru/informatika-i-vychislitelnaya-tekhnika/bazy-dannykh#3

Конспект:

База данных (БД) — именованная совокупность данных, отражающая состояние объектов и их отношений в рассматриваемой предметной области.

Система управления базами данных (СУБД) — совокупность языковых и программных средств, предназначенных для создания, наполнения, обновления и удаления баз данных.

Вот другие определения:

пятница, 4 февраля 2022 г.

Postman


API — сокращение от Application Programming Interface (программный интерфейс приложения). API — набор правил, протоколов и инструментов для взаимодействия между приложениями. Говоря простым языком, API — интерфейс, который определяет, как одна программа должна взаимодействовать с другой программой. Как правило, представляет собой набор функций, которые могут быть вызваны другой программой.

Postman — приложение для работы с API. Это популярный API клиент, который позволяет разрабатывать, тестировать и документировать API.

Как тестировщики, с помощью Postman мы можем отсылать HTTP/s запросы к сервисам и получать от них ответы. С помощью такого подхода можно протестировать бэкенд сервисы и убедиться, что они корректно работают.

React

 Вики: https://ru.wikipedia.org/wiki/React

React (иногда React.js или ReactJS) — JavaScript-библиотека с открытым исходным кодом для разработки пользовательских интерфейсов.

React разрабатывается и поддерживается Facebook, Instagram и сообществом отдельных разработчиков и корпораций.

React может использоваться для разработки одностраничных и мобильных приложений. Его цель — предоставить высокую скорость, простоту и масштабируемость. В качестве библиотеки для разработки пользовательских интерфейсов React часто используется с другими библиотеками, такими как MobX, Redux и GraphQL.

вторник, 1 февраля 2022 г.

SOAP

Источник: https://ru.wikipedia.org/wiki/SOAP

SOAP (от англ. Simple Object Access Protocol — простой протокол доступа к объектам — протокол обмена структурированными сообщениями в распределённой вычислительной среде.

Архитектор

Источник: https://ru.wikipedia.org/wiki/Архитектор

REST

Здесь https://habr.com/ru/post/590679/ 

Сначала простым языком объясняются такие термины как: формат представления данных, протокол (протокол передачи данных), транспорт (сетевой протокол). 

Далее идёт речь про REST, подробно, с разбором принципов.

Понятно одно - есть противоречия в понимании этого термина.

Терминология

JSON

Источник: https://apix-drive.com/ru/blog/useful/chto-takoe-json (увы ссылка не рабочая)

Общие правила:

  • сначала всегда идёт название какого-то поля, а через двоеточие — его значение. 
  • названия всегда берутся в двойные кавычки, строковые значения — тоже.
  • вложенные объекты берутся в фигурные скобки;
  • массивы берутся в прямоугольные скобки;
  • после каждой пары «свойство: значение» должна стоять запятая (в самом конце — не ставится).

JSON (JavaScript Object Notation) – это текстовый формат, предназначенный для хранения структурированных данных.

Формат JSON используется для упорядоченного хранения данных в процессе их обмена между веб-браузером или клиентской частью приложения и сервером или между разными серверами.