Тут на помощь придут виртуальные машины и эмуляторы, которые способны имитировать любую ОС на одном компьютере без ее установки.
Как установить подобную систему и работать с ней? Давайте разбираться.
Что такое операционная система
Операционная система – это одно из главных требований к окружению программы. Это самое главное, что нам надо знать, когда мы настраиваем среду для тестирования.
Напомню, что настройки среды делаются для того, чтобы протестировать продукт именно в тех условиях и на том «рабочем варианте» или бранче, на котором были сделаны изменения. Чаще всего для этого достаточно просто открыть приложение в той локации, которая указана программистом, или скачать соответствующий изменениям бранч с GIT. Также могут понадобиться настройки среды (установление соединения с интернетом, настройка сервера сообщений, предоставление прав тестовому пользователю).
Операционная система (ОС) – это комплекс взаимосвязанных программ, предназначенных для управления ресурсами компьютера и организации взаимодействия с пользователем.
В настоящее время разработка программ происходит в основном для трех самых популярных систем:
1. Windows OS,
2. Linux,
3. MacOS.
Положение осложняется тем, что каждая из этих систем (кроме, пожалуй, MacOS, о которой нельзя так утверждать однозначно) – это не единичная ОС (в разных релизах), а целое семейство операционных систем со своими особенностями и системными требованиями.
Семейство Windows включает в себя разновидности Windows Home, Windows Pro, Windows Enterprise, Windows Server. Каждая из них имеет свои особенности и нюансы. Например, версия PRO, по сравнению с Home, имеет более широкие возможности защиты данных от кражи.
Наверно, только человек, совсем не интересующийся темой IT, не слышал о множестве дистрибутивов Linux (например, Ubuntu, Kali Linux, Fedora). Много споров ведется об отличиях и преимуществах каждого из них. Это тема для отдельной статьи, возможно, даже не для одной. Скажем только, что даже если сказано, что программа разрабатывается «под Linux», – это вовсе не значит, что она «встанет» на всех дистрибутивах.
Из всего вышесказанного можно сделать вывод о том, что одна из трудностей, с которой мы сталкиваемся, когда начинаем тестировать десктопное приложение – это развертывание нескольких сред для тестирования. Эта трудность возникает, если мы хотим проверить работоспособность программы в нескольких ОС (WinPro i WinServer, например, или различные версии одного и того же продукта для Windows и Linux).
На нашем рабочем компьютере мы можем установить одну, максимум две ОС одновременно.
Неужели, чтобы полноценно протестировать приложение, нам надо иметь несколько рабочих машин, на которых нужно переустановить прошивку?
Как же тестировать?
На помощь приходит виртуальная машина. То есть программа, которая позволяет эмулировать все элементы компьютера, включая жесткий диск, сетевую карту, USB-порты. Говоря проще, с помощью этой программы мы имитируем нужную нам операционную систему, не устанавливая ее на наш компьютер. При этом мы можем с ней работать (настраивать, соединяться с сетью интернет, устанавливать и удалять программы), как если бы она действительно была нашей рабочей ОС.
Дополнительная привлекательность работы с ОС в виртуальной машине для тестировщиков состоит в том, что компоненты такой операционки можно смело ломать, не боясь повредить рабочий компьютер и находящиеся на нем важные данные. Ведь виртуальная машина создает для ОС некое изолированное окружение, состояние которого никак не влияет на нашу «рабочую» среду.
Какие бывают виртуальные машины?
Если надо тестировать среду Windows, то можно воспользоваться встроенной виртуальной машиной Microsoft Hyper-V. Чтобы запустить её, надо зайти в панель управления Windows. Выбрать раздел «Включение и выключение компонентов Windows». В открывшемся окошке надо отметить пункт «Hyper-V».
После того как изменения будут подтверждены и после перезапуска компьютера, остается только запустить Hyper-V, подобно любой другой программе, установленной на компьютере.
Ее недостатком является то, что запуск на ней других ОС, не из семейства Windows, проблематичен. Поэтому лучше воспользоваться другими продуктами.
Одним из самых лучших продуктов среди виртуальных машин считается VMware Workstation. Эта программа платная, подробности о ней можно узнать на официальном сайте: https://www.vmware.com/.
Самым популярным решением является бесплатный продукт Oracle VirtualBox, который позволяет виртуально (то есть только программными, а не аппаратными средствами) визуализировать любую операционную систему.
Установка и работа с VirtualBox
Чтобы установить VirtualBox, не надо быть компьютерным гением. Достаточно скачать файл exe c официального сайта и установить программу, как любую другую, с помощью встроенного установщика Windows.
Как и в случае любого другого установщика, достаточно нажимать кнопку «Далее», пока продукт не «встанет» на компьютер. Если установщик предлагает установить какой-нибудь дополнительный компонент или драйвер, то надо согласиться.
В Linux можно установить пакет из репозитория вашего дистрибутива.
Чтобы начать работать с VirtualBox, нужно:
- Создать ту самую изолированную среду, о которой речь шла выше (указать объем выделяемой памяти RAM, создать и указать объем виртуального твердого диска). Для этого надо нажать в главном окне программы кнопку «Создать» и заполнить поля появившейся формы.
2. Загрузить туда саму операционку с образа диска iso. Это можно сделать в настройках машины в разделе «Носители». Достаточно просто указать машине путь к образу диска на вашем компьютере:
3. После того как вы укажете машине путь к диску iso, процесс установки ОС и дальнейшей с ней работы не будет отличаться от «настоящей».
Можно создать сколько угодно виртуальных машин с нужными нам операционными системами. Здесь мы ограничены только физическими возможностями нашей «реальной» машины (объемом «настоящего» твердого диска, на котором будет храниться «виртуальный» в виде обычного файла, и памяти RAM).
***
Таким образом, виртуальная машина помогает протестировать ПО на разных вариантах ОС. Очень полезно это бывает, например, при тестировании установщиков программ. Удобство виртуальной машины состоит в том, что мы можем это делать на своем рабочем компьютере, не переустанавливая операционку.
Кстати, на виртуальной машине можно не только испытывать ПО, которое надо протестировать, или знакомиться с новыми ОС, которые вы пока еще не готовы установить «в реале». Используйте их для того, чтобы запускать программы, которые по каким-то причинам не работают с вашей «настоящей» системой (поломаны настройки, нет версии для установленной на компьютере ОС и т.п.).