Como testar código dependente de tempo com TimeProvider e FakeTimeProvider no .NET 11
Substitua DateTime.UtcNow, Stopwatch e Task.Delay por System.TimeProvider para que os testes controlem o relógio: registro na injeção de dependência, FakeTimeProvider.Advance e SetUtcNow, testes de timeouts e de um BackgroundService baseado em PeriodicTimer, além das armadilhas do Advance com continuações e do xUnit v2.