Как тестировщику находить их? Давайте разбираться.
С конфигурациями десктопного приложения у тестировщика вяжется два аспекта.
1. Конфигурации самого приложения.
Чтобы тестировать продукт, мы должны знать, как его конфигурировать – то есть как указать правильные настройки, которые необходимы, чтобы ПО работало адекватно, ну или вообще работало. Например, это могут быть параметры базы данных, логин и пароль от нее, профиль пользователя (его права, набор функциональностей, которые ему доступны), набор плагинов, который должна запустить данная конфигурация, и т.д.
![Пример конфигурационного файла игры Black Mesa, определяющий комбинации игровых клавиш.](https://sun9-87.userapi.com/impg/WQ5qVYfSSbu26YL-BpYYr2I11zYUSBU6xP3QoQ/GDoEy1ho6Gs.jpg?size=640x413&quality=96&sign=355c53d0f6377f8d16d53de04300eb89&type=album)
Если указать эти конфигурации неправильно, то приложение не будет работать корректно, и мы будем получать ошибку не по причине того, что программный код написан неправильно, а потому что программа не может выполнить требуемого из-за неправильной конфигурации.
Например, не может выдать информацию по причине отсутствия доступа к базе данных. Или выдает не тот результат, который мы ожидаем, по причине того, что в конфигурациях указана не та БД (база данных). Поэтому, приступая к тестированию продукта, надо познакомиться не только с интерфейсом и технической документацией, но также разобраться в тонкостях параметров конфигурации.
Параметры конфигурации программного обеспечения указываются обычно в текстовом файле. Его можно изменять вручную или в специальном интерфейсе. Обычно для этого достаточно простого блокнота. Более удобной и продвинутой программой является Notepad++.
2. Конфигурационное тестирование.
Это специальный вид тестирования, направленный на проверку работы программного обеспечения при различных конфигурациях системы (заявленных платформах, поддерживаемых драйверах, при различных конфигурациях компьютеров и т.д.). Оно проводится в ситуациях, когда надо подобрать оптимальные конфигурации для адекватной и бесперебойной работы ПО. Особое значение этот вид тестирования имеет при миграции на другую платформу. В этом случае нам необходимо проверить наш продукт на совместимость с объявленным в спецификации оборудованием, операционными системами и программными продуктами третьих фирм.
ISTQB не выделяет конфигурационное тестирование как отдельный вид. Вышеописанные тесты попадают под определение тестирования портируемости (portability testing).
Чтобы осуществлять такое тестирование, нужно разобраться не с конфигурациями тестируемого продукта, а с конфигурациями окружения. Причем во внимание следует брать не только программные средства (драйвера и библиотеки, стороннее ПО, которое может повлиять на наше, типы и версии ОС, ее конфигурации) но и аппаратные (количество и тип процессоров, объем памяти, параметры сети и сетевые адаптеры).
Определить конфигурацию рабочей машины можно, зайдя в Bios компьютера (как это сделать, можно прочитать, например, здесь). Какие-то типовые советы по определению и изменению конфигурации компьютера на основе информации из BIOS дать нелегко, так как интерфейс и возможности у разных типов и ревизий BIOS отличаются, и бывает, что довольно существенно. Но в интернете об этом есть достаточно информации. Достаточно сделать запрос, упомянув фирму и модель своей рабочей машины.
![Биос рабочей машины.](https://sun9-68.userapi.com/impg/CQz7qg0BvncdxdTqZUoN7P2ZVs559WtiyySCEw/MOq-KauvJYk.jpg?size=755x566&quality=96&sign=12207c1396f8843e7671d4f227279bf9&type=album)
Конфигурации системы Windows хранятся в реестре Windows. Это сложная древовидная структура, в которой до конца не разбираются, наверно, даже ее создатели, настолько она сложна и объемна. Информации по реестру много, начинающему тестировщику, да и вообще пользователю, стоит помнить, что не стоит вносить какие-либо изменения в реестр Windows, если ты на 100% не уверен, что ты делаешь. Если такая уверенность составляет хотя бы 99% – лучше всего записать, что конкретно в реестре было изменено.
Конфигурация системы Windows 10 из UI.
В системе Linux конфигурационные файлы системы хранятся в каталоге /etc, а пользовательские настройки – в домашнем каталоге пользователя.
![Конфигурационные файлы в системе Linux](https://sun9-59.userapi.com/impg/dPlosYBIKQxLm5KxT3felJj0Em_6mO26-kjYMg/2wS3rXVXd38.jpg?size=757x376&quality=96&sign=fefb58a22c9ec8e6e7eb3547c2d28527&type=album)
Легче всего доступ к настройкам осуществлять через терминал. Умение управлять системой Linux через терминал тем более полезно, что можно встретиться с ситуацией отсутствия графической оболочки.
***
Таким образом, знание и умение конфигурировать тестируемый продукт, а также основные операционные системы и аппаратные средства может весьма пригодиться тестировщику. И не только для конфигурационного тестирования. Эти навыки – must have продвинутого пользователя, которыми тестировщик, несомненно, должен обладать.