Наприклад:
Знов'як Юрій Володимирович
Печерський
171
11
512A 0
5536895 kievoi@yandex.ru
Києво-Печерський ліцей № 171 "Лідер"
у першому рядку обмеження на час у мілісекундах та опціонально обмеження на пам’ять у кілобайтах;
у кожному з наступних рядків можна задавати номер тесту або проміжок номерів та через пробіл вартість тестів у відповідній групі.
Приклад, що задає обмеження в 1 секунду та 256 мегабайтів та вартість перших 10 тестів по 4 бали, а решти 10 — по 6 балів:
1000 262144
1-10 4
11-20 6
Такий файл може бути спільним для всіх задач або для різних задач різним (наприклад, якщо різною є кількість тестів у різних задачах). У такому випадку, щоб указати шлях до файлу з описом тестів, потрібно скористатися змінною %task, що задає назву задачі.
Вхідні та вихідні файли
У лівій частині інтерфейсу потрібно вказати, де розташовано вхідні та еталони вихідних файлів у каталозі з тестами. У правій частині — назви вхідного й вихідного файлів з погляду програми учасника.
Приклад заповнення відповідних полів
ліворуч | праворуч | |
---|---|---|
Вхідні | %task\%num:3.in | %task.in |
Вихідні | %task\%num:3.ans | %task.out |
При такому заповненні в директорії з тестами тести до кожної задачі зберігають в окремому каталозі, назва якого — це назва задачі, з назвами файлів 001.in/001.ans, 002.in/002.ans і т. д.
Число 3 після двокрапки визначає, що у назві відповідного файлу номер тесту потрібно доповнити нулями зліва до трицифрового. Назви вхідного та вихідного файлів для програми виглядають у поданому прикладі як назва задачі з розширеннями in та out відповідно.
Файл налаштувань
Під час роботи програми тестування буде створено файл налаштувань settings.ini, який містить введені параметри тестування. Нижче подано вміст такого файлу, який буде надано учасникам олімпіади.
[Paths] WorkFolder=D:\Olimp\WORK\STS\examples\sols\ TestFolder=D:\Olimp\WORK\STS\examples\sum\ TestName=testdata.txt InTestName=%num:2.in InName=%task.in OutTestName=%num:2.ans OutName=%task.out [Settings] LineBreakPts=0,5 LineBreak=1 [Tasks] Tasklist=sum\n [Compilers] pas=fpc ||| D:\Olimp\FreePascal\bin\i386-win32\fpc.exe ||| -O -O2 %file ||| [[empty]] ||| [[empty]] ||| { Free Pascal } cpp=g++ ||| C:\Program Files\CodeBlocks\MinGW\bin\g++.exe ||| -O2 -static -lm %file -o %exe ||| [[empty]] ||| [[empty]] ||| /* GCC */ java=java ||| C:\Program Files\Java\jdk1.8.0_51\bin\javac.exe ||| %file ||| C:\Program Files\Java\jre1.8.0_51\bin\java.exe ||| %task ||| [[empty]] py=python 3 ||| [[empty]] ||| [[empty]] ||| C:\Program Files\Python\python.exe ||| %file ||| """ Python 3 """
При спробі працювати з конфігураційним файлом, неузгодженим з розташуванням тек, буде виведено інформаційне вікно з пропозицією змінити налаштування: виправити або видалити шлях.
Тестування
Щоб почати тестування, потрібно натиснути кнопку Почати тестування праворуч унизу вікна програми STS. Результати тестування буде записано у файлах result.csv, result_full.html, result_full.txt робочої теки (з копіями робочих тек учасників). У разі повторного тестування результати попереднього тестування буде знищено.
Тлумачення діагностик
Якщо замість кількості балів за тест у файлах result_full.html, result_full.txt вказано скорочення латиницею, то вони мають таке тлумачення:
Як завантажити систему тестування?
Під час проведення ІІІ (міського) етапу олімпіади з інформатики систему тестування можна буде скопіювати з теки D:\Olimp\Doc\STS у теку D:\Olimp\Work\STS. Посилання на архів є на сторінці «Проведення і результати» сайту «Київські учнівські олімпіади з інформатики». Після розпакування потрібно додати розширення exe до файлу STS. Разом з програмою надано файл налаштувань для тестування розв'язань задачі sum: зчитати 2 цілих числа і записати їхню суму. Також подано тести до цієї задачі та розв'язання мовами Pascal, C++, Java і Python. Перед перевіркою взаємодії свого розв'язання з системою тестування учасник повинен перевірити коректність роботи системи тестування для задачі sum і у разі потреби переналаштувати її. У разі використання STS на ІІ (районному) етапі олімпіади бажано ще до проведення олімпіади змінити налаштування під актуальне розташування тек з програмним забезпеченням.
Використання спеціальних алгоритмів перевірки
Інколи (наприклад, при багатоваріантній відповіді і довільного порядку виведення варіантів) потрібно використати спеціальні алгоритми перевірки. У цьому випадку використання програми порівняння еталонного й вихідного файлів можливе за таких умов:
check.exe — назва програми порівняння, яка по завершенню своєї роботи створює файл report з єдиним рядком. Перші символи цього рядка — кількість балів, присуджених за тест;
інтерфейс і структура програми не відрізняються від тих, що розроблялися для використання системою тестування Kgrader і які можна використати без будь-яких змін. Коди цих зразків подано у теці Kgrader\code, виконувані файли — у теці Kgrader\testdir (див. приклад такої програми для задачі 2. Тест набору завдань № 2 відбірково-тренувальних зборів);
check.dll — динамічно приєднувану бібліотеку (англійською dynamic-link library) потрібно розташувати в одній теці з вхідними файлами і еталонними файлами відповіді.
Питання
З усіх питань щодо роботи системи можна звертатися до автора Данила Мисака за такою адресою електронної пошти: danmysak@gmail.com.