🤖 ИИ  ·  20 вопросов  ·  ~45 мин  ·  ⏱ Таймер 45:00  ·  Сложный  · 

ИИ в программировании

Помощник по программированию может ускорить разбор требований, предложить реализацию и найти дефект, но он так же легко создаёт убедительный код с неверными предположениями, устаревшим интерфейсом или уязвимостью. Тест проверяет весь путь от постановки задачи до безопасной приёмки результата.

Отвечено: 0 из 20
--:--
0%
💡 Инструкция: Выбери один ответ из четырёх. В тесте 20 вопросов и 45 минут; не меньше половины заданий требуют прочитать код, конфигурацию или формализованную схему. После завершения откроются общий процент, четыре тематические шкалы, правильные ответы и разбор каждого решения.
Вопрос 1 из 20
Нужно сгенерировать функцию разбора даты. Какая спецификация уменьшит число скрытых допущений?
Python
parse_date("2026-02-30")
parse_date("2026-07-13")
Вопрос 2 из 20
ИИ предложил этот код для чтения JSON. Какой граничный случай не обработан?
Python
def load_config(path):
    with open(path, encoding="utf-8") as f:
        return json.load(f)
Вопрос 3 из 20
Модель рекомендует `library.fast_parse_v3`, но такой функции нет в установленной версии. Что делать?
Python
import library
print(library.__version__)
print(hasattr(library, "fast_parse_v3"))
Вопрос 4 из 20
Тест иногда падает только при параллельном запуске. Какой следующий шаг наиболее полезен?
Python
def worker():
    global counter
    tmp = counter
    counter = tmp + 1
Вопрос 5 из 20
Какой фрагмент безопаснее формирует запрос по имени пользователя?
Python
cursor.execute("SELECT id FROM users WHERE name = ?", (name,))
Вопрос 6 из 20
ИИ написал рекурсивный обход каталога без ограничений. Какое требование нужно было задать заранее?
Python
for child in path.iterdir():
    if child.is_dir():
        walk(child)
Вопрос 7 из 20
Два решения сортируют миллион записей. Первое материализует все промежуточные копии, второе работает потоково. Что проверить до выбора?
Python
all_rows = sorted(list(transform(x) for x in source))
Вопрос 8 из 20
После ответа ИИ разработчик заменил `except Exception` на `except: pass`. Что ухудшилось?
Python
try:
    update_balance()
except:
    pass
Вопрос 9 из 20
Функция должна возвращать элементы без повторов, сохраняя первый порядок. Какой тест лучше фиксирует контракт?
Python
assert unique([3,1,3,2,1]) == [3,1,2]
Вопрос 10 из 20
Сгенерированный обработчик загружает весь файл в память. В требованиях допускаются файлы до 40 ГБ. Какое исправление соответствует задаче?
Python
data = upload.read()
result = process(data)
Вопрос 11 из 20
Трассировка указывает на `KeyError: user_id`, но ключ формируется на предыдущем этапе. Где искать причину?
Python
payload = normalize(raw)
user = users[payload["user_id"]]
Вопрос 12 из 20
ИИ предлагает хранить ключ API в исходном файле для простоты развёртывания. Как лучше?
Python
API_KEY = "sk-live-secret"
Вопрос 13 из 20
Почему просьба «исправь баг» без минимального примера часто даёт слабый результат?
Вопрос 14 из 20
Сгенерированная функция кэширует результат по `user_id`, хотя ответ зависит ещё и от языка. Какой дефект?
Python
key = f"profile:{user_id}"
cache.set(key, render_profile(user_id, locale))
Вопрос 15 из 20
Как проверить, что исправление не изменило поведение на допустимых старых входах?
Python
pytest tests/test_parser.py tests/integration -q
Вопрос 16 из 20
Пользовательское имя файла соединяется с каталогом загрузок. Как предотвратить выход через `../`?
Python
target = (UPLOAD_ROOT / user_name).resolve()
if UPLOAD_ROOT.resolve() not in target.parents: raise ValueError("bad path")
Вопрос 17 из 20
ИИ предложил асинхронную функцию, но внутри неё вызывается тяжёлая синхронная операция. Что произойдёт?
Python
async def handle(request):
    report = build_huge_report_sync(request.data)
    return report
Вопрос 18 из 20
Почему автоматическое принятие большого изменения от ИИ опаснее маленького патча?
Вопрос 19 из 20
Сервис запускает команду с пользовательским параметром через `shell=True`. Какой вариант безопаснее?
Python
subprocess.run(["convert", input_path, "-resize", size, output_path], check=True, shell=False)
Вопрос 20 из 20
Какой признак означает, что код можно принимать после помощи ИИ?
Python
checks = [unit_tests, integration_tests, type_check, lint, dependency_scan, human_review]
release = all(checks)

Ответьте на все 20 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe)

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу