Difference between revisions of "Serve.cfg:problem:disable stderr"
(Created page with "Данная конфигурационная переменная позволяет запретить вывод тестируемой программы на стандар...") |
|||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Использование]]/[[Конфигурационные файлы]]/[[serve.cfg]]/[[serve.cfg:problem|Конфигурационные параметры задач]]/<tt>[[serve.cfg:problem:disable_stderr|disable_stderr]]</tt> | ||
+ | |||
+ | |||
+ | '''Редактирование элемента:''' страница ''"Editing contest"'', вкладка ''"Problems (serve.cfg)"'', блок ''"Abstract problems"'', поле ''"Consider output to stderr as PE"'', либо страница ''"Editing contest"'', вкладка ''"Problems (serve.cfg)"'', блок ''"Concrete problems"'', поле ''"Consider output to stderr as PE"''. | ||
+ | |||
+ | |||
Данная конфигурационная переменная позволяет запретить вывод тестируемой программы на стандартный | Данная конфигурационная переменная позволяет запретить вывод тестируемой программы на стандартный | ||
поток ошибок (stderr, cerr, System.err...). | поток ошибок (stderr, cerr, System.err...). | ||
Line 4: | Line 10: | ||
По умолчанию вывод тестируемой программы на стандартный поток ошибок игнорируется. Он сохраняется | По умолчанию вывод тестируемой программы на стандартный поток ошибок игнорируется. Он сохраняется | ||
в протоколе тестирования, но не влияет на вердикт тестирования. Если конфигурационная переменная | в протоколе тестирования, но не влияет на вердикт тестирования. Если конфигурационная переменная | ||
− | disable_stderr установлена в положительное значение, то вывод программы на стандартный поток | + | <tt>disable_stderr</tt> установлена в положительное значение, то вывод программы на стандартный поток |
ошибок учитывается. Если программа вывела что-либо на стандартный поток ошибок на некотором тесте, | ошибок учитывается. Если программа вывела что-либо на стандартный поток ошибок на некотором тесте, | ||
то тестируемая программа получает вердикт Presentation error. Вывод программы на стандартный | то тестируемая программа получает вердикт Presentation error. Вывод программы на стандартный | ||
Line 12: | Line 18: | ||
Проверка вывода на стандартный поток ошибок выполняется после: | Проверка вывода на стандартный поток ошибок выполняется после: | ||
* проверки превышения лимита времени выполнения программы (time-limit exceeded); | * проверки превышения лимита времени выполнения программы (time-limit exceeded); | ||
− | * проверки корректности завершения программы (что программа завершилась не из-за сигнала | + | * проверки корректности завершения программы (что программа завершилась не из-за сигнала и с кодом завершения 0) (run-time error); |
− | и с кодом завершения 0) (run-time error); | ||
* проверки ограничений по памяти (memory limit exceeded); | * проверки ограничений по памяти (memory limit exceeded); | ||
* проверки нарушений политики безопасности (security violation). | * проверки нарушений политики безопасности (security violation). | ||
− | Конифигурационная переменная disable_stderr может устанавливаться в описании абстрактной | + | Конифигурационная переменная <tt>disable_stderr</tt> может устанавливаться в описании абстрактной |
задачи, и ее значение будет унаследовано в конкретных задачах. Если конфигурационная переменная | задачи, и ее значение будет унаследовано в конкретных задачах. Если конфигурационная переменная | ||
установлена в положительное значение в абстрактной задача, но в некоторой конкретной задаче | установлена в положительное значение в абстрактной задача, но в некоторой конкретной задаче | ||
Line 27: | Line 32: | ||
Для отдельных тестов режим запрета вывода на стандартный поток ошибок может изменяться | Для отдельных тестов режим запрета вывода на стандартный поток ошибок может изменяться | ||
− | с помощью .inf файла теста. Параметр disable_stderr в .inf файле управляет режимом запрета | + | с помощью .inf-файла теста. Параметр <tt>disable_stderr</tt> в .inf-файле управляет режимом запрета |
− | вывода для конкретного теста, а параметр check_stderr - режимом сравнения вывода с | + | вывода для конкретного теста, а параметр <tt>check_stderr</tt> - режимом сравнения вывода с |
эталонным ответом. | эталонным ответом. | ||
+ | |||
+ | Поддерживается с версии 2.3.20. |
Latest revision as of 12:50, 12 February 2013
Навигация: Главная страница/Система ejudge/Использование/Конфигурационные файлы/serve.cfg/Конфигурационные параметры задач/disable_stderr
Редактирование элемента: страница "Editing contest", вкладка "Problems (serve.cfg)", блок "Abstract problems", поле "Consider output to stderr as PE", либо страница "Editing contest", вкладка "Problems (serve.cfg)", блок "Concrete problems", поле "Consider output to stderr as PE".
Данная конфигурационная переменная позволяет запретить вывод тестируемой программы на стандартный
поток ошибок (stderr, cerr, System.err...).
По умолчанию вывод тестируемой программы на стандартный поток ошибок игнорируется. Он сохраняется в протоколе тестирования, но не влияет на вердикт тестирования. Если конфигурационная переменная disable_stderr установлена в положительное значение, то вывод программы на стандартный поток ошибок учитывается. Если программа вывела что-либо на стандартный поток ошибок на некотором тесте, то тестируемая программа получает вердикт Presentation error. Вывод программы на стандартный поток вывода или в файл (как требуется в условии задачи) не проверяется, тестирующая программа не запускается.
Проверка вывода на стандартный поток ошибок выполняется после:
- проверки превышения лимита времени выполнения программы (time-limit exceeded);
- проверки корректности завершения программы (что программа завершилась не из-за сигнала и с кодом завершения 0) (run-time error);
- проверки ограничений по памяти (memory limit exceeded);
- проверки нарушений политики безопасности (security violation).
Конифигурационная переменная disable_stderr может устанавливаться в описании абстрактной задачи, и ее значение будет унаследовано в конкретных задачах. Если конфигурационная переменная установлена в положительное значение в абстрактной задача, но в некоторой конкретной задаче необходимо ее сбросить, то в разделе описания конкретной задачи нужно явно установить ее значение в 0.
[problem] disable_stderr = 0
Для отдельных тестов режим запрета вывода на стандартный поток ошибок может изменяться с помощью .inf-файла теста. Параметр disable_stderr в .inf-файле управляет режимом запрета вывода для конкретного теста, а параметр check_stderr - режимом сравнения вывода с эталонным ответом.
Поддерживается с версии 2.3.20.