UVM Coding Practice · Senior

Test vs Env Responsibilities

Split of duties for reuse.

Interview prompt

What do you put in base_test vs env?

diagram
WHITEBOARD CHAIN

1. DECLARE    interfaces / types / ports you need
2. SKELETON   class extends + utils macro + key methods
3. MECHANISM  fill one critical method while narrating
4. PITFALL    name one bug juniors make on this pattern
5. TEST       how you would smoke-test the component
  • env: agents, scoreboard, cfg defaults, connect_phase TLM

  • test: factory override, virtual seq choice, objections, plusargs

  • base_test: shared build/connect; derived tests add scenario only

Mechanism to narrate

  • Reuse env across 50 tests — env never hardcodes one sequence

  • Test sets cfg via config_db before env.build children

  • Coverage closure hooks often in env report_phase

Smoke test (5 minutes)

  • List 5 things only in test for your last project.

  • List 5 things only in env.

Common pitfalls

  • Sequences hardcoded in env.

  • Factory override after create.

  • Scoreboard in test not env.