VPNtest: Руководство администратора

Материал из YourcmcWiki
Перейти к: навигация, поиск

Термины, сокращения и предположения

СТ
Система Тестирования
БД
База Данных, на данный момент используется СУБД MySQL
Z:\
Везде далее под Z:\ подразумевается виртуальный диск, создаваемый Денвером при установке. Если у вас буква диска отлична от Z, используйте её.
vpntest.ru
Везде далее под vpntest.ru подразумевается имя хоста, используемое для размещения СТ как «сайта» в локальной сети. Если вы используете другое имя — читайте документ так, как будто везде вместо vpntest.ru написано вами выбранное имя.
Администратор СТ
Управляющий СТ и процессом тестирования
Логин Администратора СТ
Входное имя, используемое Администратором СТ при аутентификации
Пароль Администратора СТ
Пароль, используемый Администратором СТ при аутентификации
Пользователь БД
Зарегистрированный в СУБД пользователь, имеющий доступ к БД СТ
Логин Пользователя БД 
Входное имя, используемое СТ для доступа к БД
Пароль Пользователя БД
Пароль, используемый СТ для доступа к БД
Панель администрирования СТ
Панель управления СТ
Панель администрирования СТ
Веб-интерфейс, через который осуществляется управление СТ и процессом тестирования
Архив СТ
Хранилище результатов прошедших тестирований
Инициализация БД
Состоит из двух действий: сначала очистка БД СТ, потом создание рабочих таблиц в БД СТ
Инициализация БД Архива СТ
Создание архивных таблиц в БД СТ
Рабочие таблицы БД
Таблицы, используемые для хранения актуальных данных
Архивные таблицы БД
Таблицы, используемые для хранения архивных данных (результатов прошедших тестирований)
Загрузка вопросов в БД
Заполнение таблицы вопросов заранее подготовленным содержимым, исходным форматом является текстовый файл
Регистрация слушателя
Заполнение анкеты, выбор логина и пароля, создание учётной записи слушателя в СТ
Авторизация слушателя
Процесс «опознания» зарегистрированного слушателя, включает проверку пароля
Тестирование слушателя
Процесс ответа слушателя на вопросы и сохранения результатов

Установка СТ

СТ устанавливается на специально выделенный компьютер — «сервер». В случае Windows-машины сервер проще всего организовать с помощью системы типа «Денвер» (Д. Н. W. Р. — Джентльменский Набор Web-Разработчика) или XAMPP.

Установка Денвера

  1. Вы (Администратор СТ) должны выбрать имя для виртуального «сайта» с тестами — по умолчанию vpntest.ru
  2. На компьютере Администратора СТ, который будет выступать сервером для слушателей, установите базу: Apache + PHP + MySQL c помощью, например, Денвера (Джентльменский Набор Web-разработчика), бесплатный дистрибутив которого можно скачать здесь: Base_PHP5.
    Примечание: Если на компьютере Администратора СТ уже установлены Apache, PHP и MySQL, можете использовать их.
    Примечание: Если на рабочем столе не появится ярлыков «Start Servers», «Restart Servers», «Stop Servers», создайте их вручную — ярлыки на C:\WebServers\etc\Run.exe — запуск серверов, C:\WebServers\etc\Restart.exe — перезапуск серверов и C:\WebServers\etc\Stop.exe — останов серверов. Здесь C:\WebServers\etc\ — установочная директория Денвера.
  3. Запустите Денвер, дважды кликнув по ярлыку «Start Servers».
  4. Задайте Пароль пользователя БД. Для этого:
    • Зайдите в браузере по адресу http://localhost/Tools/phpMyAdmin/,
    • Выберите «Привилегии»,
    • Кликните по иконке «Редактирование привилегий» справа от строки с Пользователем БД «root»,
    • Заполните поля Пароль и Подтверждение пароля,
    • Выберите радиокнопку рядом со словом «Пароль»,
    • Нажмите «Пошёл».
  5. Остановите Денвер, дважды кликнув по ярлыку «Stop Servers».
  6. Пусть Z:\ — виртуальный диск, созданный Денвером, тогда удалите всё, кроме папки localhost, из папки Z:\home.
    Папку «localhost» можно и удалить, но лучше переместите её куда-нибудь в недоступное по HTTP место, чтобы иметь возможность при необходимости воспользоваться phpMyAdmin-ом.
  7. Добавьте в файл Z:\usr\local\apache\conf\httpd.conf строчку Listen *:80 — это требуется для того, чтобы Apache слушал 80-й порт и принимал входящие соединения от всех IP-адресов, то есть, цель данного пункта — сделать возможным заходить в систему тестирования с компьютеров слушателей.

Установка СТ

  1. Создайте в Z:\home папку с именем vpntest.ru (с именем хоста — виртуального «сайта» — см. п.1) и распакуйте в эту папку архив с дистрибутивом системы тестирования.
    • После установки подпапка WWW эквивалентна корню «сайта» vpntest.ru.
    • В подпапке WWW расположены файлы, отвечающие за регистрацию и тестирование:
    • В WWW/admin/ расположена администраторская часть системы.
    • В WWW/lib/ расположены библиотеки функций, используемые системой при работе, а также config.php — конфигурационный файл.
  2. Сконфигурируйте систему тестирования. Для этого отредактируйте конфигурационный файл config.php, который находится в папке Z:\home\vpntest.ru\WWW\lib\config.php, следующим образом:
    • Откройте для редактирования файл config.php
    • Проведите следующие настройки:
    • В строке $dbuser = введите имя Пользователя БД.
    По умолчанию значение переменной $dbuser = «root».
    Если Пользователь БД имеет другой логин и обладает меньшими, чем у root, привилегиями, измените значение этой переменной. При этом вы можете поднять уровень безопасности.
    • В строке $dbpwd = введите пароль Пользователя БД, который вы задали в пункте 4.
    $dbpwd = «11111» (в данном случае).
    Значение переменной $dbpwd требуется менять сразу после установки, а также при смене пароля на доступ к БД.
    Пароль к БД хранится в конфигурационном файле config.php в открытом виде. Однако, даже если убрать .htaccess, доступ к нему пользователи не получат, т.к config.php лишь проинтерпретируется PHP и ничего не выдаст на экран.
    • В строке $TriesCount = установите количество попыток ответа на один вопрос
    $TriesCount = 2 (при четырех вариантах ответов этого будет достаточно).
    • В строке $TimeLimit = установите время ответов на вопросы теста в секундах:
    $TimeLimit = 60*100 (в данном случае 100 минут).
    Если значение переменной $TimeLimit меньше или равно 0, временной лимит отключён.
    Если строка с этой переменной закомментирована, временной лимит отключён.
    • В строке $DoNotShowResults = установите значение false, чтобы пользователи могли посмотреть количество правильных ответов в процентах по отношению к количеству всех вопросов.
    • Сохраните изменения в файле конфигурации config.php.
    Внимание! До тех пор, пока вы не отредактируете файл config.php, вы не сможете зайти в Панель Управления СТ.
  3. Установите входные данные Администратора СТ.
    • Используется HTTP-аутентификация. Логин и пароль Администратора СТ хранятся в отдельном файле «passwords» (в хэшированном виде), который вы создаёте при установке.
    • Установите Логин и Пароль Администратора СТ. Для этого:
    • Наберите в командной строке Windows: Z:\usr\local\apache\bin\htpasswd -с Z:\home\vpntest.ru\ passwords ЛОГИН_АДМИНА
    • Далее дважды введите пароль, который станет Паролем администратора СТ.
    • После установки Логина и Пароля администратора СТ в двух файлах .htaccess поменяйте строчку Require user vmx на строчку Require user ЛОГИН_АДМИНА, где ЛОГИН_АДМИНА — указанный вами Логин Администратора СТ. Файлы .htaccess находятся в папках:
      • Z:\home\vpntest.ru\WWW\admin\.htaccess
      • Z:\home\vpntest.ru\WWW\lib\.htaccess
    • Если вы используете отличное от vpntest.ru имя виртуального хоста или отличную от Z букву виртуального диска, то в этих же файлах .htaccess необходимо в строчке AuthUserFile Z:\home\vpntest.ru\passwords вместо Z:\home\vpntest.ru\passwords прописать полный путь к файлу с Паролем администратора СТ.

Подготовка СТ к работе

Произведите Инициализацию БД:

  • Запустите Денвер, дважды кликнув по ярлыку «Start Servers»
  • В браузере зайдите по адресу http://vpntest.ru/admin/
  • Введите ЛОГИН_АДМИНА — Логин Администратора СТ и соответствующий пароль — Пароль Администратора СТ в высвечивающемся окне аутентификации
  • Нажмите на кнопку «Инициализировать БД»
  • Перейдите по ссылке «К архиву» под заголовком страницы
  • Перейдите по ссылке «…нажмите __сюда__, чтобы произвести инициализацию…»

БД инициализирована.

Загрузка вопросов из текстового файла.

  • В Панели Управления СТ нажмите кнопку «Обзор» («Browse»)
  • Выберите подготовленный заранее текстовый файл с вопросами теста
  • Задайте вариант для вопросов загружаемого файла (или оставьте его равным значению по умолчанию = 1)
  • Нажмите кнопку «Загрузить вопросы в БД»
  • После этого вопросы будут загружены в БД, а вам будет показан результат операции загрузки вопросов (были ошибки или нет). Также система покажет детальную информацию обо всех этих ошибках.
Замечание: Если в БД уже загружены вопросы, которые требуется уничтожить перед добавлением новых — установите флажок «Перезаписать БД вопросов» и нажмите кнопку «Загрузить вопросы в БД».

Конфигурирование клиентских компьютеров

Чтобы компьютеры слушателей могли найти хост vpntest.ru, добавьте на компьютерах локальной сети, кроме компьютера Администратора СТ (Денвер — сам разберётся) в файл hosts строчку вида 192.168.0.10 vpntest.ru, где 192.168.0.10 надо заменить на IP-адрес компьютера Администратора СТ, а vpntest.ru — на установленное имя виртуального хоста.

Файл hosts расположен в:

  • В Windows NT/2K/XP/Vista — C:\WINDOWS\SYSTEM32\DRIVERS\ETC\hosts
  • В Windows 9x/Me — C:\WINDOWS\hosts.sam
  • В Linux и других UNIX-системах — /etc/hosts

На всех компьютерах локальной сети в свойствах браузера отключите использование HTTP прокси-серверов.

Итак, Система Тестирования установлена.

Панель управления СТ

Когда вы заходите в браузере по адресу http://www.vpntest.ru/admin/ - появится окно с запросом авторизации:

VPNtest - HTTP-аутентификация Администратора СТ.png

После ввода входных данных Администратора СТ и нажатия кнопки ОК вы попадете в Панель Управления СТ, в которой Администратор СТ управляет СТ и процессом тестирования:

VPNtest - Панель управления СТ.png

В Панели Управления СТ Администратору СТ доступны:

  • Вывод информации о слушателях (список, анкета, результаты теста)
  • Просмотр списка вопросов в БД
  • Загрузка вопросов из текстового файла
  • Инициализация БД

Подготовка текстового файла с вопросами теста

Чтобы загрузить вопросы в БД согласно пункту «#Подготовка СТ к работе», сначала надо подготовить текстовый файл с вопросами.

Формат файла

Файл с вопросами — это файл формата *.txt. Один файл с вопросами соответствует одному варианту теста и состоит из:

  • Названия теста,
  • Списка вопросов.

Название теста можно задать в строках, начинающихся с ### (трёх решёток). Все эти строки склеиваются через <br /> (для HTML это перевод строки) и сохраняются в БД как название теста.

Список вопросов:

  • Каждый вопрос состоит из 5 строк.
  • Первая строка вопроса содержит номер и текст вопроса.
  • Все вопросы должны быть пронумерованы.
  • Остальные четыре строки содержат четыре возможные варианта ответа.
  • Тот вариант ответа, перед которым стоит (* — звездочка), считается правильным.
  • Примечание: Если звёздочкой отмечено несколько вариантов — как правильный будет выбран последний из них.

В любом месте файла с вопросами могут присутствовать пустые строки и комментарии. Пустой строкой считается строка, содержащая не более, чем пробелы и символы табуляции. Кроме того, пробелы и табуляции в начале и конце всех строк обрезаются, то есть, отступы не играют вообще никакой роли. Комментариями в файле вопросов считаются строки, начинающиеся с ;;;, то есть, с «трёх точек с запятой». При обработке файла комментарии игнорируются так же, как и пустые строки.

И вопросы, и ответы — не просто текст: допускается использование HTML кода. Например, чтобы вставить в текст вопроса или ответа перевод строки, вы должны написать <br />. Чтобы вставить в текст вопроса или ответа изображение — напишите <img src="путь_к_картинке">. Путь к картинке задаётся относительно корня директории WWW. Рекомендуется писать пути в стиле <img src="/dir1/dir2/.../img.png"> — тогда вы будете абсолютно уверены в том, что картинки везде отобразятся корректно и возьмутся из /home/vpntest.ru/WWW/dir1/dir2/.../img.png.

Пример файла с вопросами

Этот пример включается в дистрибутив СТ и находится в архиве в файле testq.txt.

    ;;; Название теста задаётся в строках, начинающихся после ###
    ### Тестовый Тест: Тавтология
    ;;; как видите, отступы совершенно не влияют на результат работы
 
1. Тестовый Вопрос 1: <p><img width="200" src="/images/image.png"></p>
    ТВ1
   *ТВ2
    ТВ3
    ТВ4
 
2. Тестовый Вопрос 2
   *ТВ1
    ТВ2
    ТВ3
    ТВ4
 
;;; комментарии разрешены в любой строке файла - поэтому вы можете
;;; оставлять для себя примечания к вопросам...
 
3. Тестовый Вопрос 3
    ТВ1
    ТВ2
    ТВ3
   *ТВ4 ;;; ...и даже к ответам

Возможные операции со списком слушателей

Чтобы увидеть список слушателей с их анкетными данными и последними результатами, нажмите на кнопку «Искать слушателей» в Панели Управления СТ. Вы увидите что-то вроде:

VPNtest - Просмотр пользователей.png

Просмотр результатов тестирования

В крайней правой ячейке каждой строки со слушателями вы можете заметить ссылку «...» — нажав на эту ссылку, вы увидите анкету слушателя и все его результаты.

Также вы можете посмотреть полный список результатов всех выведенных пользователей — для этого перейдите по ссылке «Подробные результаты». Вы увидите ответы слушетелей на все вопросы теста — правильные и неправильные ответы, а также вопросы, на которые не были даны ответы.

Разрешение и запрещение тестирования

Нажав на кнопку «Искать слушателей» в Панели Управления СТ, вы можете также разрешать и запрещать слушателям начинать тестирования. \\ Установите флажки напротив необходимых слушателей и:

  • Чтобы разрешить им пройти ещё 1 тест — нажмите на кнопку «+1 тест»
  • Чтобы уменьшить их счётчики возможных прохождений тестов на 1 — нажмите на кнопку «-1 тест»
  • Чтобы запретить им начинать тестирования — нажмите на кнопку «Обнулить тесты»

Удаление слушателей

Вы можете удалить слушателей вовсе. Для этого так же выберите их установкой флажков напротив, и нажмите кнопку «Удалить слушателей». \\ Данное действие требует подтверждения.

Версия для печати

Перейдя по ссылке «версия для печати» внизу списка, вы увидите printer-friendly версию таблицы: список команд Панели Управления СТ будет скрыт. \\ Чтобы вернуться обратно — перейдите по ссылке «назад».

Архив СТ

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

__Архив является множеством копий рабочей базы данных__, с которыми можно работать практически так же, как и с рабочей базой данных, за тем исключением, что «сданные в архив» пользователи уже не смогут проходить тесты.

Общие сведения

Чтобы перейти к архиву, нажмите на ссылку «к архиву» вверху страницы администрирования системы — в Панели Управления СТ (Рис.1.6). \\ Аналогичным образом из архива вы можете вернуться обратно к администрированию, нажав на ссылку «к администрированию» вверху страницы с архивом.

Появится окно Архива СТ. Архив устроен как множество снимков рабочей базы данных. Каждый снимок включает в себя:

  • Информацию о пользователях,
  • Информацию о результатах пользователей,
  • Информацию о вариантах и вопросах тестов.

Возможные действия с архивом

В архиве доступны следующие команды:

  • Вывод списка снимков.
  • Создание нового снимка.
  • Удаление снимка из базы данных.
  • Полное уничтожение архива.

Вывод списка снимков

Чтобы вывести список снимков:

  • Либо введите подстроку названия в поле «имя снимка содержит строку:»
  • Либо введите дату, позже которой должен быть сделан снимок, в поле «Позже YYYY-MM-DD:» \\ Дата задаётся в формате YYYY-MM-DD, например: 2006-05-11 означает 11 мая 2006 года.
  • Нажмите кнопку «Показать список снимков»

VPNtest - Список снимков.png

Просмотр данных снимка

  • Выведите на экран список снимков в соответствии с пунктом «#Вывод списка снимков»
  • Найдите в этом списке требуемый снимок.
  • Выберите его, кликнув по названию.
  • Теперь вы можете:
    • Просмотреть список пользователей из снимка (аналогично пункту #Возможные операции со списком слушателей), кликнув по ссылке «Список слушателей», или «. . .» рядом с ним — в этом случае будет показана форма поиска слушателей.
    • Просмотреть список результатов, переходя по ссылкам из списка пользователей.
    • Просмотреть список вопросов из снимка, кликнув по ссылке «Список вопросов».

Создание нового снимка

Чтобы создать новый снимок, введите имя для нового снимка в поле «Имя снимка» и нажмите либо Enter, либо кнопку «Сделать снимок». После выполнения операции у вас в архиве появится новый снимок, являющийся точной копией текущей базы данных.

Удаление снимка из архива

Чтобы удалить снимок:

  • Выведите на экран список снимков в соответствии с пунктом «#Вывод списка снимков»
  • Найдите в этом списке требуемый снимок.
  • Выберите его, кликнув по названию.
  • Перейдите по ссылке «Удалить снимок».
  • Подтвердите свой выбор в появляющемся окне.

VPNtest - Удаление снимка.png

Уничтожение архива

Чтобы уничтожить архив, вам придётся сначала подтвердить свои действия в появляющемся на экране после клика на кнопке «Уничтожить архив» окне.

  • После уничтожения архива будут безвозвратно потеряны абсолютно все данные, которые хранились в нём.
  • Очищается также структура базы данных, создаваемая при инициализации архива.
  • Поэтому, если вы хотите снова начать работу с архивом после уничтожения, вам придётся заново его инициализировать.