I inject dependency in test by anther trick [TestFixture] public class SshToolClientTests { private ServiceProvider serviceProvider { get; set; } private ISshToolClient client=> serviceProvider.GetService<ISshToolClient>(); public SshToolClientTests() { serviceProvider = new ServiceCollection() .AddTransient<ISshToolClient, SshToolClient.SshToolClient>() .BuildServiceProvider(); } [OneTimeTearDown] public void OneTimeTeardown() { serviceProvider.Dispose(); } [SetUp] public void Setup() { } [Test] public void GenerateConfigFile( ) { ISshConfig config= client.GetDefaultConfiguration(); Assert.IsNotNull(config); var json=JsonConvert.SerializeObject(config, Formatting.Indented); string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "generatedSshConfig.json" ); File.WriteAllText(path, json); TestContext.WriteLine(@$ "file:///{path.Replace('\\','/')}" ); } }