Тестирование
В сборке сервера имеется скрипт testserver.bat(.sh) для запуска программы самотестирования принтера и сервера печати. Производится проверка:
физического доступа к serial-портам;
прямого доступа к железной части устройства принтера;
сетевого доступа к принтеру, эмулируется работа клиента (в данном случае - сервера биллинга);
доступа к серверу для получения статуса;
всех драйверов, которые физически нашлись в сборке сервера, для каждого проводится процедура самотестирования (процедура driver touch).
Результаты работы скрипта выводятся в stdout и stderr, при необходимости можно самостоятельно перенаправить вывод в лог файл (например, ./log/testserver.out) для анализа. Пример строки запуска можно увидеть ниже. Нормально отработал или нет - видно по отсутствию ошибок в логе и надписи TEST COMPLETED в конце вывода скрипта. Эта строка не означает, что всё закончилось успешно, а просто что всё закончилось!
Если сервер запустился и скрипт testserver выдаёт приличные результаты, то серверная сторона печати чеков готова принимать команды и работать с принтером.
Программа testserver также использует log4j, настройки находятся в том же конфиге, но под меткой "testserver".
В программу testserver опционально передаётся пароль для кассира/администратора. То есть тот, что передаётся в драйвер, при логине кассира. Пароли доступа, если они нужны - будут браться из конфига.
При запуске приложения необходимо указать некоторые параметры, при этом делается либо тест, либо touch, либо всё вместе. Параметры запуска:
testserver[.bat|.sh] [--dotest] [--dotouch] [--passwordXXX] [--driversDRIVER1,
DRIVER2
,...]
где --dotest делать тесты;
--dotouch делать тач драйверов;
--password(пароль) задать пароль оператора для некоторых тестов (без пробелов и скобок), иначе не задан (равен нулю);
--drivers(драйвер1),(драйвер2)... задать драйвер(ы) для теста (без пробелов и скобок), иначе выбраны все.
Также, как сказано выше, при необходимости надо перенаправить вывод в лог, к примеру, так:
./testserver.sh --dotest --dotouch > test.log
2
>&
1
Так, к примеру, выглядит тест драйвера штриха с созданием файла testserver.log для анализа (под Linux и Windows соответственно):
./testserver.sh --dotouch --driversru.bitel.frk.driver.shtrih.Driver,ru.bitel.frk.driver.shtrih2.Driver > testserver.log
2
>&
1
./testserver.bat --dotouch
"--driversru.bitel.frk.driver.shtrih.Driver,ru.bitel.frk.driver.shtrih2.Driver"
> testserver.log
2
>&
1