Test with different clocks

Hello I’m developing an UVM test and I have a problem with the clock management. In the system under test there are different clocks, so I need to manage them. What is the correct method to implement a test of a system with different clocks? Should I generate the clocks in the BFM and create multiple driver for every clock domain?

In reply to ireon:

In the UVM you can do more or less anything. But the question is what is reasonable and useful.
Clocks are generated in toplevel module of your UVM testbench and feeded to the corresponding functional Interfaces of your design and the corresponding agents. I believe it does not make really sense to split a functional interface between the clock domains. This would cause additional efforts to synchronize them. There is no limitation regarding the number of clocks in an Agent.