2606
Комментарий:
|
3419
|
Удаления помечены так. | Добавления помечены так. |
Строка 32: | Строка 32: |
* Как написать тест на класс/функцию? 1. К файлу с классом/функцией приписывается тестирующий код {{{#!highlight python print(eval(input())) }}} 1. В файл с тестом (`1.in`) кладётся ''выражение на питоне'', в котором используется тестируемый класс или функция 1. В файл с эталонным выводом попадает результат этого `print()` * Пример: 1. `prog.py` {{{#!highlight python class C: A = 100500 def fun(self, other): return self.A+other import sys exec(sys.stdin.read()) }}} 1. `data/1.in` {{{ C().A+42-C().fun(33) }}} 1. `data/1.out` {{{ 9 }}} |
Структура git-репозитория для практикума 2020 г. по Python
Каталог для практикума в git-репозитории должен называться pythonprac. Далее все пути указаны, считая от этого каталога.
После создания репозитория его следует зарегистрировать здесь: https://git.cs.msu.ru/gkuryachiy/prac/-/issues/1
- Указать ФИО и группу
Для каждого задания практикума создается каталог с датой вида <ГГГГММДД> (выдача команды date "+%Y%m%d_1"), дата - того семинара, на котором выдано задание. Если на семинаре выдано несколько заданий, то для них создаются каталоги вида <ГГГГММДД_1>, <ГГГГММДД_2> и т.п.
В каталоге содержатся:
файл readme.txt с требуемой по заданию информацией о разработанной программе. Как минимум - с названием задания. Могут также потребоваться: перечень ключей командной строки, перечень входных файлов, описание формата вывода.
- файл(ы) с текстом программы.
- конфигурационные файлы, если они есть у программы.
подкаталог data/, в котором хранятся примеры входных данных (если нужны по заданию).
Файлы с именами inputчисло.txt и outputчисло.txt — тестовые
запуск программы проверки checker.py путь-до-каталога-с-решением
для всех файлов число.in
запускает ваше решение, передаёт ему на стандартный вход содержимое число.in
сравнивает вывод решения с эталонным выводом число.out
- Выводит статистику, и, если они есть, различия
Пример:
20200903_1/
readme.txt
task1.py
task1.ini
data/
1.in
1.out
2.in
2.out
- …
- Как написать тест на класс/функцию?
- К файлу с классом/функцией приписывается тестирующий код
1 print(eval(input()))
В файл с тестом (1.in) кладётся выражение на питоне, в котором используется тестируемый класс или функция
В файл с эталонным выводом попадает результат этого print()
- К файлу с классом/функцией приписывается тестирующий код
- Пример:
prog.py
data/1.in
C().A+42-C().fun(33)
data/1.out
9