`define TC_CASE(tc_name, seq_name) \
class ``tc_name`` extends base_test; \
`uvm_component_utils(``tc_name``) \
function new(string name = "``tc_name``", uvm_component parent); \
super.new(name, parent); \
endfunction \
function void build_phase(uvm_phase phase); \
super.build_phase(phase); \
uvm_config_db#(uvm_object_wrapper)::set(this, "m_top_vsqr.main_phase", "default_sequence", ``seq_name``::type_id::get()); \
endfunction \
endclass
以后 直接在case里面调用
`TC_CASE(tc_valid_test, valid_sequence)