학습 본문으로 건너뛰기
VAIRODE
pytest·debugging·logging34번째 작은 수업
오늘은 질문 하나만 해결해요34 / 52

도움 없이 한 번 더 풀어보기

spec·autospec과 patch lookup 지점을 지킨다

오늘의 질문

`unittest.mock`의 spec·spec_set·autospec·side_effect와 lookup-site patch를 사용해 존재하지 않는 API와 잘못된 signature를 조기에 거부한다. 이 판단을 생략하면 통과한 test와 많은 log가 있어도 결함을 놓치거나 잘못된 수정을 승인할 수 있습니다.

아직 답을 몰라도 괜찮아요. 아래 작은 예시를 보고 먼저 예상해 보세요.

01 · 혼자 확인해요

연습한 문제를 다시 풀며 혼자 확인하기

지금은 방금 연습한 문제를 다시 보는 시간이에요.아직 “완전히 익혔다”고 기록하지 않아요. 나중에 모양이 다른 문제도 도움 없이 풀면 그때 다시 확인할 수 있어요.

답과 과정 확인
80% 이상
내 말로 설명
80% 이상
막힌 곳 고치기
80% 이상
다른 문제에 써보기
80% 이상
스스로 확인하며 작성 중인 답0 / 4
  1. 01

    먼저 생각하기 · 기초

    td34 외부 SDK wrapper의 unit test에서 spec·autospec과 patch lookup 지점을 지킨다 계약을 적용한다.의 collection·setup·act·assert·teardown·log 결과를 실행 전에 예측한다.

    지금은 답을 먼저 보여 주지 않아요. 내가 적은 답은 연습 메모로만 저장되고, 합격으로 기록되지 않아요.

    연습과 같은 문제를 다시 풀어 보는 시간이에요. 힌트 없이 먼저 생각해 보세요. 지금 적은 답은 바로 합격으로 기록되지 않아요.

    정답과 비교
  2. 02

    내 말로 설명하기 · 익힌 것을 써보기

    td34 결과를 Python 3.14.6·pytest 9.0.0 공식 계약과 최소 반례로 설명한다.

    지금은 답을 먼저 보여 주지 않아요. 내가 적은 답은 연습 메모로만 저장되고, 합격으로 기록되지 않아요.

    연습과 같은 문제를 다시 풀어 보는 시간이에요. 힌트 없이 먼저 생각해 보세요. 지금 적은 답은 바로 합격으로 기록되지 않아요.

    설명 기준과 비교
  3. 03

    틀린 곳 고치기 · 도전

    td34 정의 module을 patch한다.에서 last-good·first-bad state와 실패 owner를 찾아 최소 수정을 검증한다.

    지금은 답을 먼저 보여 주지 않아요. 내가 적은 답은 연습 메모로만 저장되고, 합격으로 기록되지 않아요.

    연습과 같은 문제를 다시 풀어 보는 시간이에요. 힌트 없이 먼저 생각해 보세요. 지금 적은 답은 바로 합격으로 기록되지 않아요.

    답과 설명 함께 비교
  4. 04

    새 문제에 써보기 · 새 문제

    td34 td34 spec·autospec과 patch lookup 지점을 지킨다: `unittest.mock`의 spec·spec_set·autospec·side_effect와 lookup-site patch를 사용해 존재하지 않는 API와 잘못된 signature를 조기에 거부한다.를 외부 SDK wrapper의 unit test에 전이하고 결정성·격리·oracle·비노출 경계를 방어한다.

    지금은 답을 먼저 보여 주지 않아요. 내가 적은 답은 연습 메모로만 저장되고, 합격으로 기록되지 않아요.

    연습과 같은 문제를 다시 풀어 보는 시간이에요. 힌트 없이 먼저 생각해 보세요. 지금 적은 답은 바로 합격으로 기록되지 않아요.

    설명 기준과 비교

4개 답이 남았습니다.

02 · 나중에 한 번 더

모양이 다른 문제에서도 같은 생각을 써봐요

td34 spec·autospec과 patch lookup 지점을 지킨다: `unittest.mock`의 spec·spec_set·autospec·side_effect와 lookup-site patch를 사용해 존재하지 않는 API와 잘못된 signature를 조기에 거부한다.의 미공개 fixture에서 AI 없이 expected·first divergence·oracle·failure owner를 결정하고 재현 명령과 non-disclosure receipt를 제출한다.

검증 과제

AI가 제안한 spec·autospec과 patch lookup 지점을 지킨다의 test·diagnostic 후보를 생성하되 학습자가 먼저 쓴 expected result와 독립 oracle을 바꾸지 않고 반례로 검증한다. 해법에 weak oracle, shared fixture state, wrong patch lookup, wrong log level, secret leak, branch gap 또는 order dependency 중 하나 이상을 심어 독립 evidence로 찾아 수정한다.