UVM run_test Method


In the test bench top module , we use the run_test(“testname”) method to initiate the process. But why we won’t declare any handle for the class test inside module?

Is there any particular reason for not declaring handle of test class inside module?


Because run_test does this for us. It uses the factory to construct a test object with the string name “testname” and makes in a child of the uvm_root singleton class.

Thanks for the explanation. I understood the purpose of run_test now.

Also Is this the reason whenever we print a topology it always starts with uvm_test_top.env. … instead of uvm_test? as string name “testname” is constructed as an object casted from uvm_test_top(uvm component).