Why starting_phase in pre_body()/post_body() is null object?

  1. The variable starting_phase is only set when using the default_sequence method of starting a sequence. See uvm_sequence_base.svh and uvm_sequencer_base.svh for further clarification. If you are starting the sequence as part of your test, you should set starting_phase manually.

  2. You should never use the default_sequence method to start a sequence as it is deprecated. Always start the sequence as part of your test.

  3. Your test never completes because you don’t call item_done() for req.