VPNtest: Руководство администратора — различия между версиями
(Массовая правка: замена Категория:Разработка на Категория:Архив, замена Category:Разработка на Категория:Архив) |
|||
(не показано 8 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
− | == | + | == Термины, сокращения и предположения == |
; '''СТ''': Система Тестирования | ; '''СТ''': Система Тестирования | ||
Строка 18: | Строка 18: | ||
; '''Рабочие таблицы БД''': Таблицы, используемые для хранения актуальных данных | ; '''Рабочие таблицы БД''': Таблицы, используемые для хранения актуальных данных | ||
; '''Архивные таблицы БД''': Таблицы, используемые для хранения архивных данных (результатов прошедших тестирований) | ; '''Архивные таблицы БД''': Таблицы, используемые для хранения архивных данных (результатов прошедших тестирований) | ||
− | ; '''Загрузка вопросов в БД''': Заполнение таблицы вопросов заранее подготовленным содержимым, [[# | + | ; '''Загрузка вопросов в БД''': Заполнение таблицы вопросов заранее подготовленным содержимым, [[#Подготовка текстового файла с вопросами теста|исходным форматом]] является текстовый файл |
; '''Регистрация слушателя''': Заполнение анкеты, выбор логина и пароля, создание учётной записи слушателя в СТ | ; '''Регистрация слушателя''': Заполнение анкеты, выбор логина и пароля, создание учётной записи слушателя в СТ | ||
; '''Авторизация слушателя''': Процесс «опознания» зарегистрированного слушателя, включает проверку пароля | ; '''Авторизация слушателя''': Процесс «опознания» зарегистрированного слушателя, включает проверку пароля | ||
Строка 24: | Строка 24: | ||
== Установка СТ == | == Установка СТ == | ||
+ | |||
+ | СТ устанавливается на специально выделенный компьютер — «сервер». В случае Windows-машины сервер проще всего организовать с помощью системы типа «Денвер» ([http://www.denwer.ru/ Д. Н. W. Р. — Джентльменский Набор Web-Разработчика]) или [http://www.apachefriends.org/en/xampp.html XAMPP]. | ||
=== Установка Денвера === | === Установка Денвера === | ||
# Вы (Администратор СТ) должны выбрать имя для виртуального «сайта» с тестами — по умолчанию ''vpntest.ru'' | # Вы (Администратор СТ) должны выбрать имя для виртуального «сайта» с тестами — по умолчанию ''vpntest.ru'' | ||
− | # На компьютере Администратора СТ, который будет выступать сервером для слушателей, установите базу: Apache + PHP + MySQL c помощью, например, Денвера (Джентльменский Набор Web-разработчика), бесплатный дистрибутив которого можно скачать здесь: | + | # На компьютере Администратора СТ, который будет выступать сервером для слушателей, установите базу: Apache + PHP + MySQL c помощью, например, Денвера (Джентльменский Набор Web-разработчика), бесплатный дистрибутив которого можно скачать здесь: [http://www.denwer.ru/dis/Base_PHP5/Base_PHP5_2006-04-25_a1.3.31_p5.1.2_m4.1.16_pma2.6.1.exe 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/ http://localhost/Tools/phpMyAdmin/], |
− | #* Выберите | + | #* Выберите «'''Привилегии'''», |
− | #* Кликните по иконке | + | #* Кликните по иконке «'''Редактирование привилегий'''» справа от строки с Пользователем БД «'''root'''», |
#* Заполните поля '''Пароль''' и '''Подтверждение пароля''', | #* Заполните поля '''Пароль''' и '''Подтверждение пароля''', | ||
− | #* Выберите радиокнопку рядом со словом | + | #* Выберите радиокнопку рядом со словом «'''Пароль'''», |
− | #* Нажмите | + | #* Нажмите «'''Пошёл'''». |
− | # Остановите Денвер, дважды кликнув по ярлыку | + | # Остановите Денвер, дважды кликнув по ярлыку «'''Stop Servers'''». |
− | # Пусть Z:\ | + | # Пусть Z:\ — виртуальный диск, созданный Денвером, тогда удалите всё, кроме папки ''localhost'', из папки ''Z:\home''. |
− | # Добавьте в файл ''Z:\usr\local\apache\conf\httpd.conf'' строчку ''Listen *:80'' | + | #: Папку «localhost» можно и удалить, но лучше переместите её куда-нибудь в недоступное по HTTP место, чтобы иметь возможность при необходимости воспользоваться phpMyAdmin-ом. |
+ | # Добавьте в файл ''Z:\usr\local\apache\conf\httpd.conf'' строчку ''Listen *:80'' — это требуется для того, чтобы Apache слушал 80-й порт и принимал входящие соединения от всех IP-адресов, то есть, цель данного пункта — сделать возможным заходить в систему тестирования с компьютеров слушателей. | ||
=== Установка СТ === | === Установка СТ === | ||
− | # Создайте в Z:\home папку с именем vpntest.ru (с именем | + | # Создайте в Z:\home папку с именем vpntest.ru (с именем хоста — виртуального «сайта» — см. п.1) и распакуйте в эту папку архив с дистрибутивом системы тестирования. |
− | #* После установки подпапка ''WWW'' эквивалентна корню | + | #* После установки подпапка ''WWW'' эквивалентна корню «сайта» ''vpntest.ru''. |
− | #* В подпапке ''WWW'' расположены файлы, отвечающие за регистрацию и тестирование: | + | #* В подпапке ''WWW'' расположены файлы, отвечающие за регистрацию и тестирование: |
− | #* В ''WWW/admin/'' расположена администраторская часть системы. | + | #* В ''WWW/admin/'' расположена администраторская часть системы. |
− | #* В ''WWW/lib/'' расположены библиотеки функций, используемые системой при работе, а также ''config.php'' | + | #* В ''WWW/lib/'' расположены библиотеки функций, используемые системой при работе, а также ''config.php'' — конфигурационный файл. |
# Сконфигурируйте систему тестирования. Для этого отредактируйте конфигурационный файл ''config.php'', который находится в папке ''Z:\home\vpntest.ru\WWW\lib\config.php'', следующим образом: | # Сконфигурируйте систему тестирования. Для этого отредактируйте конфигурационный файл ''config.php'', который находится в папке ''Z:\home\vpntest.ru\WWW\lib\config.php'', следующим образом: | ||
#* Откройте для редактирования файл ''config.php'' | #* Откройте для редактирования файл ''config.php'' | ||
#* Проведите следующие настройки: | #* Проведите следующие настройки: | ||
− | #* В строке ''$dbuser ='' введите имя Пользователя БД. | + | #* В строке ''$dbuser ='' введите имя Пользователя БД. |
− | #* В строке ''$dbpwd ='' введите пароль Пользователя БД, который вы задали в пункте 4. | + | #: По умолчанию значение переменной ''$dbuser'' = «root». |
− | #* В строке ''$TriesCount ='' установите количество попыток ответа на один вопрос | + | #: Если Пользователь БД имеет другой логин и обладает меньшими, чем у root, привилегиями, измените значение этой переменной. При этом вы можете поднять уровень безопасности. |
− | #* В строке ''$TimeLimit ='' установите время ответов на вопросы теста в секундах: | + | #* В строке ''$dbpwd ='' введите пароль Пользователя БД, который вы задали в пункте 4. |
− | #* В строке ''$DoNotShowResults ='' установите значение false, чтобы пользователи могли посмотреть количество правильных ответов в процентах по отношению к количеству всех вопросов. | + | #: ''$dbpwd'' = «11111» (в данном случае). |
− | #* Сохраните изменения в файле конфигурации config.php. | + | #: Значение переменной ''$dbpwd'' требуется менять сразу после установки, а также при смене пароля на доступ к БД. |
+ | #: Пароль к БД хранится в конфигурационном файле ''config.php'' в открытом виде. Однако, даже если убрать ''.htaccess'', доступ к нему пользователи не получат, т.к ''config.php'' лишь проинтерпретируется PHP и ничего не выдаст на экран. | ||
+ | #* В строке ''$TriesCount ='' установите количество попыток ответа на один вопрос | ||
+ | #: ''$TriesCount = 2'' (при четырех вариантах ответов этого будет достаточно). | ||
+ | #* В строке ''$TimeLimit ='' установите время ответов на вопросы теста в секундах: | ||
+ | #: ''$TimeLimit = 60*100'' (в данном случае 100 минут). | ||
+ | #: Если значение переменной ''$TimeLimit'' меньше или равно 0, временной лимит отключён. | ||
+ | #: Если строка с этой переменной закомментирована, временной лимит отключён. | ||
+ | #* В строке ''$DoNotShowResults ='' установите значение false, чтобы пользователи могли посмотреть количество правильных ответов в процентах по отношению к количеству всех вопросов. | ||
+ | #* Сохраните изменения в файле конфигурации config.php. | ||
+ | #: '''Внимание!''' До тех пор, пока вы не отредактируете файл ''config.php'', вы не сможете зайти в Панель Управления СТ. | ||
# Установите входные данные '''Администратора СТ'''. | # Установите входные данные '''Администратора СТ'''. | ||
− | #* Используется HTTP-аутентификация. Логин и пароль Администратора СТ хранятся в отдельном файле | + | #* Используется HTTP-аутентификация. Логин и пароль Администратора СТ хранятся в отдельном файле «passwords» (в хэшированном виде), который вы создаёте при установке. |
#* Установите Логин и Пароль Администратора СТ. Для этого: | #* Установите Логин и Пароль Администратора СТ. Для этого: | ||
− | #* '''Наберите в командной строке''' Windows: ''Z:\usr\local\apache\bin\htpasswd | + | #* '''Наберите в командной строке''' Windows: ''Z:\usr\local\apache\bin\htpasswd -с Z:\home\vpntest.ru\ passwords ЛОГИН_АДМИНА'' |
#* Далее дважды введите пароль, который станет Паролем администратора СТ. | #* Далее дважды введите пароль, который станет Паролем администратора СТ. | ||
− | #* После установки Логина и Пароля администратора СТ в двух файлах ''.htaccess'' поменяйте строчку ''Require user vmx'' на строчку ''Require user ЛОГИН_АДМИНА'', где | + | #* После установки Логина и Пароля администратора СТ в двух файлах ''.htaccess'' поменяйте строчку ''Require user vmx'' на строчку ''Require user ЛОГИН_АДМИНА'', где ЛОГИН_АДМИНА — указанный вами Логин Администратора СТ. Файлы .htaccess находятся в папках: |
#** ''Z:\home\vpntest.ru\WWW\admin\.htaccess'' | #** ''Z:\home\vpntest.ru\WWW\admin\.htaccess'' | ||
#** ''Z:\home\vpntest.ru\WWW\lib\.htaccess'' | #** ''Z:\home\vpntest.ru\WWW\lib\.htaccess'' | ||
Строка 71: | Строка 86: | ||
Произведите '''Инициализацию БД''': | Произведите '''Инициализацию БД''': | ||
− | * Запустите Денвер, дважды кликнув по ярлыку | + | * Запустите Денвер, дважды кликнув по ярлыку «'''Start Servers'''» |
− | * В браузере зайдите по адресу | + | * В браузере зайдите по адресу http://vpntest.ru/admin/ |
− | * Введите | + | * Введите ЛОГИН_АДМИНА — '''Логин Администратора СТ''' и соответствующий пароль — '''Пароль Администратора СТ''' в высвечивающемся окне аутентификации |
− | * Нажмите на кнопку | + | * Нажмите на кнопку «'''Инициализировать БД'''» |
− | * Перейдите по ссылке | + | * Перейдите по ссылке «'''К архиву'''» под заголовком страницы |
− | * Перейдите по ссылке | + | * Перейдите по ссылке «…нажмите __'''сюда'''__, чтобы произвести инициализацию…» |
'''БД инициализирована.''' | '''БД инициализирована.''' | ||
Строка 82: | Строка 97: | ||
Загрузка вопросов из текстового файла. | Загрузка вопросов из текстового файла. | ||
− | * В Панели Управления СТ нажмите кнопку | + | * В Панели Управления СТ нажмите кнопку «'''Обзор'''» («Browse») |
* Выберите подготовленный заранее текстовый файл с вопросами теста | * Выберите подготовленный заранее текстовый файл с вопросами теста | ||
* Задайте вариант для вопросов загружаемого файла (или оставьте его равным значению по умолчанию = 1) | * Задайте вариант для вопросов загружаемого файла (или оставьте его равным значению по умолчанию = 1) | ||
− | * Нажмите кнопку | + | * Нажмите кнопку «'''Загрузить вопросы в БД'''» |
− | * После этого вопросы будут загружены в БД, а вам будет показан результат операции загрузки вопросов (были ошибки или нет). Также система покажет детальную информацию обо всех этих ошибках. | + | * После этого вопросы будут загружены в БД, а вам будет показан результат операции загрузки вопросов (были ошибки или нет). Также система покажет детальную информацию обо всех этих ошибках. |
+ | : '''Замечание:''' Если в БД уже загружены вопросы, которые требуется уничтожить перед добавлением новых — установите флажок «'''Перезаписать БД вопросов'''» и нажмите кнопку «'''Загрузить вопросы в БД'''». | ||
=== Конфигурирование клиентских компьютеров === | === Конфигурирование клиентских компьютеров === | ||
− | Чтобы компьютеры слушателей могли найти хост ''vpntest.ru'', добавьте на компьютерах локальной сети, кроме компьютера Администратора СТ ( | + | Чтобы компьютеры слушателей могли найти хост ''vpntest.ru'', добавьте на компьютерах локальной сети, кроме компьютера Администратора СТ ([http://www.denwer.ru/ Денвер] — сам разберётся) в файл hosts строчку вида ''192.168.0.10 vpntest.ru'', где 192.168.0.10 надо заменить на IP-адрес компьютера Администратора СТ, а vpntest.ru — на установленное имя виртуального хоста. |
Файл hosts расположен в: | Файл hosts расположен в: | ||
− | * В Windows NT/2K/XP/ | + | * В Windows NT/2K/XP/Vista — C:\WINDOWS\SYSTEM32\DRIVERS\ETC\hosts |
− | * В Windows 9x/ | + | * В Windows 9x/Me — C:\WINDOWS\hosts.sam |
− | * В Linux и других UNIX- | + | * В Linux и других UNIX-системах — /etc/hosts |
На всех компьютерах локальной сети в свойствах браузера отключите использование HTTP прокси-серверов. | На всех компьютерах локальной сети в свойствах браузера отключите использование HTTP прокси-серверов. | ||
Строка 104: | Строка 120: | ||
== Панель управления СТ == | == Панель управления СТ == | ||
− | Когда вы заходите в браузере по адресу | + | Когда вы заходите в браузере по адресу http://www.vpntest.ru/admin/ - появится окно с запросом авторизации: |
[[Изображение:VPNtest - HTTP-аутентификация Администратора СТ.png]] | [[Изображение:VPNtest - HTTP-аутентификация Администратора СТ.png]] | ||
Строка 130: | Строка 146: | ||
* Списка вопросов. | * Списка вопросов. | ||
− | Название теста можно задать в строках, начинающихся с | + | Название теста можно задать в строках, начинающихся с <code>###</code> (трёх решёток). Все эти строки склеиваются через ''<nowiki><br /></nowiki>'' (для HTML это перевод строки) и сохраняются в БД как название теста. |
Список вопросов: | Список вопросов: | ||
Строка 143: | Строка 159: | ||
В любом месте файла с вопросами могут присутствовать пустые строки и комментарии. Пустой строкой считается строка, содержащая не более, чем пробелы и символы табуляции. Кроме того, пробелы и табуляции в начале и конце всех строк обрезаются, то есть, отступы не играют вообще никакой роли. Комментариями в файле вопросов считаются строки, начинающиеся с '';;;'', то есть, с «трёх точек с запятой». При обработке файла комментарии игнорируются так же, как и пустые строки. | В любом месте файла с вопросами могут присутствовать пустые строки и комментарии. Пустой строкой считается строка, содержащая не более, чем пробелы и символы табуляции. Кроме того, пробелы и табуляции в начале и конце всех строк обрезаются, то есть, отступы не играют вообще никакой роли. Комментариями в файле вопросов считаются строки, начинающиеся с '';;;'', то есть, с «трёх точек с запятой». При обработке файла комментарии игнорируются так же, как и пустые строки. | ||
− | И вопросы, и ответы — не просто текст: допускается использование HTML кода. Например, чтобы вставить в текст вопроса или ответа перевод строки, вы должны написать ''<br />''. Чтобы вставить в текст вопроса или ответа изображение — напишите ''<img src="путь_к_картинке">''. Путь к картинке задаётся относительно корня директории WWW. Рекомендуется писать пути в стиле ''<img src="/dir1/dir2/.../img.png">'' — тогда вы будете абсолютно уверены в том, что картинки везде отобразятся корректно и возьмутся из ''/home/vpntest.ru/WWW/dir1/dir2/ | + | И вопросы, и ответы — не просто текст: допускается использование HTML кода. Например, чтобы вставить в текст вопроса или ответа перевод строки, вы должны написать ''<nowiki><br /></nowiki>''. Чтобы вставить в текст вопроса или ответа изображение — напишите ''<img src="путь_к_картинке">''. Путь к картинке задаётся относительно корня директории WWW. Рекомендуется писать пути в стиле ''<nowiki><img src="/dir1/dir2/.../img.png"></nowiki>'' — тогда вы будете абсолютно уверены в том, что картинки везде отобразятся корректно и возьмутся из ''/home/vpntest.ru/WWW/dir1/dir2/.../img.png''. |
==== Пример файла с вопросами ==== | ==== Пример файла с вопросами ==== | ||
Строка 149: | Строка 165: | ||
Этот пример включается в дистрибутив СТ и находится в архиве в файле ''testq.txt''. | Этот пример включается в дистрибутив СТ и находится в архиве в файле ''testq.txt''. | ||
− | + | <pre> | |
− | + | ;;; Название теста задаётся в строках, начинающихся после ### | |
− | + | ### Тестовый Тест: Тавтология | |
+ | ;;; как видите, отступы совершенно не влияют на результат работы | ||
− | + | 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 ;;; ...и даже к ответам | |
+ | </pre> | ||
=== Возможные операции со списком слушателей === | === Возможные операции со списком слушателей === | ||
Строка 182: | Строка 200: | ||
==== Просмотр результатов тестирования ==== | ==== Просмотр результатов тестирования ==== | ||
− | В крайней правой ячейке каждой строки со слушателями вы можете заметить ссылку «'''. . .'''» — нажав на эту ссылку, вы увидите анкету слушателя и все его результаты. | + | В крайней правой ячейке каждой строки со слушателями вы можете заметить ссылку «'''...'''» — нажав на эту ссылку, вы увидите анкету слушателя и все его результаты. |
Также вы можете посмотреть полный список результатов '''всех''' выведенных пользователей — для этого перейдите по ссылке «'''Подробные результаты'''». Вы увидите ответы слушетелей на все вопросы теста — правильные и неправильные ответы, а также вопросы, на которые не были даны ответы. | Также вы можете посмотреть полный список результатов '''всех''' выведенных пользователей — для этого перейдите по ссылке «'''Подробные результаты'''». Вы увидите ответы слушетелей на все вопросы теста — правильные и неправильные ответы, а также вопросы, на которые не были даны ответы. | ||
Строка 241: | Строка 259: | ||
==== Просмотр данных снимка ==== | ==== Просмотр данных снимка ==== | ||
− | * Выведите на экран список снимков в соответствии с пунктом «[[# | + | * Выведите на экран список снимков в соответствии с пунктом «[[#Вывод списка снимков]]» |
* Найдите в этом списке требуемый снимок. | * Найдите в этом списке требуемый снимок. | ||
* Выберите его, кликнув по названию. | * Выберите его, кликнув по названию. | ||
* '''Теперь вы можете:''' | * '''Теперь вы можете:''' | ||
− | ** Просмотреть список пользователей из снимка (аналогично пункту [[# | + | ** Просмотреть список пользователей из снимка (аналогично пункту [[#Возможные операции со списком слушателей]]), кликнув по ссылке «'''Список слушателей'''», или «'''. . .'''» рядом с ним — в этом случае будет показана форма поиска слушателей. |
** Просмотреть список результатов, переходя по ссылкам из списка пользователей. | ** Просмотреть список результатов, переходя по ссылкам из списка пользователей. | ||
** Просмотреть список вопросов из снимка, кликнув по ссылке «'''Список вопросов'''». | ** Просмотреть список вопросов из снимка, кликнув по ссылке «'''Список вопросов'''». | ||
Строка 257: | Строка 275: | ||
Чтобы удалить снимок: | Чтобы удалить снимок: | ||
− | * Выведите на экран список снимков в соответствии с пунктом «[[# | + | * Выведите на экран список снимков в соответствии с пунктом «[[#Вывод списка снимков]]» |
* Найдите в этом списке требуемый снимок. | * Найдите в этом списке требуемый снимок. | ||
* Выберите его, кликнув по названию. | * Выберите его, кликнув по названию. | ||
Строка 273: | Строка 291: | ||
* Поэтому, если вы хотите снова начать работу с архивом после уничтожения, вам придётся заново его инициализировать. | * Поэтому, если вы хотите снова начать работу с архивом после уничтожения, вам придётся заново его инициализировать. | ||
− | [[Категория: | + | [[Категория:Архив]] |
+ | [[Категория:Перенесено с vmx.yourcmc.ru]] |
Текущая версия на 15:42, 20 июня 2016
Термины, сокращения и предположения
- СТ
- Система Тестирования
- БД
- База Данных, на данный момент используется СУБД 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, либо кнопку «Сделать снимок». После выполнения операции у вас в архиве появится новый снимок, являющийся точной копией текущей базы данных.
Удаление снимка из архива
Чтобы удалить снимок:
- Выведите на экран список снимков в соответствии с пунктом «#Вывод списка снимков»
- Найдите в этом списке требуемый снимок.
- Выберите его, кликнув по названию.
- Перейдите по ссылке «Удалить снимок».
- Подтвердите свой выбор в появляющемся окне.
Уничтожение архива
Чтобы уничтожить архив, вам придётся сначала подтвердить свои действия в появляющемся на экране после клика на кнопке «Уничтожить архив» окне.
- После уничтожения архива будут безвозвратно потеряны абсолютно все данные, которые хранились в нём.
- Очищается также структура базы данных, создаваемая при инициализации архива.
- Поэтому, если вы хотите снова начать работу с архивом после уничтожения, вам придётся заново его инициализировать.