Basic knowledge in Systemverilog
This is a short course showing how to convert a Systemverilog Module based TestBench or an old style Verilog TestBench into a Modern Class based TB. Nowadays most of the simulation environments are writing UVM based TestBench to test highly complex SoC. The basics of UVM is Systemverilog Classes and therefor you need have a good knowledge in Systemverilog Object Oriented Programming (OOP), if you want to learn UVM. This course would be good starting point just to get a feed of a pure class based TB in Systemverilog.
This will show only an example, and won't teach any theory, but you can find links to other Udemy courses and resources where the relevant theory part is mentioned. To make this course effective for you, you must have some knowledge or experience in Systemverilog.