In reply to UVM_LOVE:
You have to pass the interface using the uvm_config_db (using set) directly from your test bench, where you instantiate the DUT and connect it to a real instance of an apb_interface (not virtual!).
Then in the build_phase of your apb_basic_test after you create the m_cfg you can assign m_cfg.apb_if using the get method of the uvm_config_db