VPNtest: Руководство администратора
Термины, сокращения и предположения
- СТ
- Система Тестирования
- БД
- База Данных, на данный момент используется СУБД MySQL
- Z:\
- Везде далее под Z:\ подразумевается виртуальный диск, создаваемый Денвером при установке. Если у вас буква диска отлична от Z, используйте её.
- vpntest.ru
- Везде далее под vpntest.ru подразумевается имя хоста, используемое для размещения СТ как «сайта» в локальной сети. Если вы используете другое имя — читайте документ так, как будто везде вместо vpntest.ru написано вами выбранное имя.
- Администратор СТ
- Управляющий СТ и процессом тестирования
- Логин Администратора СТ
- Входное имя, используемое Администратором СТ при аутентификации
- Пароль Администратора СТ
- Пароль, используемый Администратором СТ при аутентификации
- Пользователь БД
- Зарегистрированный в СУБД пользователь, имеющий доступ к БД СТ
- Логин Пользователя БД
- Входное имя, используемое СТ для доступа к БД
- Пароль Пользователя БД
- Пароль, используемый СТ для доступа к БД
- Панель администрирования СТ
- Панель управления СТ
- Панель администрирования СТ
- Веб-интерфейс, через который осуществляется управление СТ и процессом тестирования
- Архив СТ
- Хранилище результатов прошедших тестирований
- Инициализация БД
- Состоит из двух действий: сначала очистка БД СТ, потом создание рабочих таблиц в БД СТ
- Инициализация БД Архива СТ
- Создание архивных таблиц в БД СТ
- Рабочие таблицы БД
- Таблицы, используемые для хранения актуальных данных
- Архивные таблицы БД
- Таблицы, используемые для хранения архивных данных (результатов прошедших тестирований)
- Загрузка вопросов в БД
- Заполнение таблицы вопросов заранее подготовленным содержимым, исходным форматом является текстовый файл
- Регистрация слушателя
- Заполнение анкеты, выбор логина и пароля, создание учётной записи слушателя в СТ
- Авторизация слушателя
- Процесс «опознания» зарегистрированного слушателя, включает проверку пароля
- Тестирование слушателя
- Процесс ответа слушателя на вопросы и сохранения результатов
Установка СТ
СТ устанавливается на специально выделенный компьютер — «сервер». В случае Windows-машины сервер проще всего организовать с помощью системы типа «Денвер» (Д. Н. W. Р. — Джентльменский Набор Web-Разработчика) или XAMPP.
Установка Денвера
- Вы (Администратор СТ) должны выбрать имя для виртуального «сайта» с тестами — по умолчанию vpntest.ru
- На компьютере Администратора СТ, который будет выступать сервером для слушателей, установите базу: 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\ — установочная директория Денвера.
- Запустите Денвер, дважды кликнув по ярлыку «Start Servers».
- Задайте Пароль пользователя БД. Для этого:
- Зайдите в браузере по адресу http://localhost/Tools/phpMyAdmin/,
- Выберите «Привилегии»,
- Кликните по иконке «Редактирование привилегий» справа от строки с Пользователем БД «root»,
- Заполните поля Пароль и Подтверждение пароля,
- Выберите радиокнопку рядом со словом «Пароль»,
- Нажмите «Пошёл».
- Остановите Денвер, дважды кликнув по ярлыку «Stop Servers».
- Пусть Z:\ — виртуальный диск, созданный Денвером, тогда удалите всё, кроме папки localhost, из папки Z:\home.
- Папку «localhost» можно и удалить, но лучше переместите её куда-нибудь в недоступное по HTTP место, чтобы иметь возможность при необходимости воспользоваться phpMyAdmin-ом.
- Добавьте в файл Z:\usr\local\apache\conf\httpd.conf строчку Listen *:80 — это требуется для того, чтобы Apache слушал 80-й порт и принимал входящие соединения от всех IP-адресов, то есть, цель данного пункта — сделать возможным заходить в систему тестирования с компьютеров слушателей.
Установка СТ
- Создайте в Z:\home папку с именем vpntest.ru (с именем хоста — виртуального «сайта» — см. п.1) и распакуйте в эту папку архив с дистрибутивом системы тестирования.
- После установки подпапка WWW эквивалентна корню «сайта» vpntest.ru.
- В подпапке WWW расположены файлы, отвечающие за регистрацию и тестирование:
- В WWW/admin/ расположена администраторская часть системы.
- В WWW/lib/ расположены библиотеки функций, используемые системой при работе, а также config.php — конфигурационный файл.
- Сконфигурируйте систему тестирования. Для этого отредактируйте конфигурационный файл 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, вы не сможете зайти в Панель Управления СТ.
- Установите входные данные Администратора СТ.
- Используется 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/ - появится окно с запросом авторизации:
После ввода входных данных Администратора СТ и нажатия кнопки ОК вы попадете в Панель Управления СТ, в которой Администратор СТ управляет СТ и процессом тестирования:
В Панели Управления СТ Администратору СТ доступны:
- Вывод информации о слушателях (список, анкета, результаты теста)
- Просмотр списка вопросов в БД
- Загрузка вопросов из текстового файла
- Инициализация БД
Подготовка текстового файла с вопросами теста
Чтобы загрузить вопросы в БД согласно пункту «#Подготовка СТ к работе», сначала надо подготовить текстовый файл с вопросами.
Формат файла
Файл с вопросами — это файл формата *.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 ;;; ...и даже к ответам
Возможные операции со списком слушателей
Чтобы увидеть список слушателей с их анкетными данными и последними результатами, нажмите на кнопку «Искать слушателей» в Панели Управления СТ. Вы увидите что-то вроде:
Просмотр результатов тестирования
В крайней правой ячейке каждой строки со слушателями вы можете заметить ссылку «...» — нажав на эту ссылку, вы увидите анкету слушателя и все его результаты.
Также вы можете посмотреть полный список результатов всех выведенных пользователей — для этого перейдите по ссылке «Подробные результаты». Вы увидите ответы слушетелей на все вопросы теста — правильные и неправильные ответы, а также вопросы, на которые не были даны ответы.
Разрешение и запрещение тестирования
Нажав на кнопку «Искать слушателей» в Панели Управления СТ, вы можете также разрешать и запрещать слушателям начинать тестирования. \\ Установите флажки напротив необходимых слушателей и:
- Чтобы разрешить им пройти ещё 1 тест — нажмите на кнопку «+1 тест»
- Чтобы уменьшить их счётчики возможных прохождений тестов на 1 — нажмите на кнопку «-1 тест»
- Чтобы запретить им начинать тестирования — нажмите на кнопку «Обнулить тесты»
Удаление слушателей
Вы можете удалить слушателей вовсе. Для этого так же выберите их установкой флажков напротив, и нажмите кнопку «Удалить слушателей». \\ Данное действие требует подтверждения.
Версия для печати
Перейдя по ссылке «версия для печати» внизу списка, вы увидите printer-friendly версию таблицы: список команд Панели Управления СТ будет скрыт. \\ Чтобы вернуться обратно — перейдите по ссылке «назад».
Архив СТ
Результаты тестирования можно сохранить в архивной базы данных.
__Архив является множеством копий рабочей базы данных__, с которыми можно работать практически так же, как и с рабочей базой данных, за тем исключением, что «сданные в архив» пользователи уже не смогут проходить тесты.
Общие сведения
Чтобы перейти к архиву, нажмите на ссылку «к архиву» вверху страницы администрирования системы — в Панели Управления СТ (Рис.1.6). \\ Аналогичным образом из архива вы можете вернуться обратно к администрированию, нажав на ссылку «к администрированию» вверху страницы с архивом.
Появится окно Архива СТ. Архив устроен как множество снимков рабочей базы данных. Каждый снимок включает в себя:
- Информацию о пользователях,
- Информацию о результатах пользователей,
- Информацию о вариантах и вопросах тестов.
Возможные действия с архивом
В архиве доступны следующие команды:
- Вывод списка снимков.
- Создание нового снимка.
- Удаление снимка из базы данных.
- Полное уничтожение архива.
Вывод списка снимков
Чтобы вывести список снимков:
- Либо введите подстроку названия в поле «имя снимка содержит строку:»
- Либо введите дату, позже которой должен быть сделан снимок, в поле «Позже YYYY-MM-DD:» \\ Дата задаётся в формате YYYY-MM-DD, например: 2006-05-11 означает 11 мая 2006 года.
- Нажмите кнопку «Показать список снимков»
Просмотр данных снимка
- Выведите на экран список снимков в соответствии с пунктом «#Вывод списка снимков»
- Найдите в этом списке требуемый снимок.
- Выберите его, кликнув по названию.
- Теперь вы можете:
- Просмотреть список пользователей из снимка (аналогично пункту #Возможные операции со списком слушателей), кликнув по ссылке «Список слушателей», или «. . .» рядом с ним — в этом случае будет показана форма поиска слушателей.
- Просмотреть список результатов, переходя по ссылкам из списка пользователей.
- Просмотреть список вопросов из снимка, кликнув по ссылке «Список вопросов».
Создание нового снимка
Чтобы создать новый снимок, введите имя для нового снимка в поле «Имя снимка» и нажмите либо Enter, либо кнопку «Сделать снимок». После выполнения операции у вас в архиве появится новый снимок, являющийся точной копией текущей базы данных.
Удаление снимка из архива
Чтобы удалить снимок:
- Выведите на экран список снимков в соответствии с пунктом «#Вывод списка снимков»
- Найдите в этом списке требуемый снимок.
- Выберите его, кликнув по названию.
- Перейдите по ссылке «Удалить снимок».
- Подтвердите свой выбор в появляющемся окне.
Уничтожение архива
Чтобы уничтожить архив, вам придётся сначала подтвердить свои действия в появляющемся на экране после клика на кнопке «Уничтожить архив» окне.
- После уничтожения архива будут безвозвратно потеряны абсолютно все данные, которые хранились в нём.
- Очищается также структура базы данных, создаваемая при инициализации архива.
- Поэтому, если вы хотите снова начать работу с архивом после уничтожения, вам придётся заново его инициализировать.