Birim test projeniz için başka bir yapılandırma dosyasında uygulama ayarlarını tanımlayabilirsiniz, ancak bağımlılık enjeksiyonunu kullanarak arayüzlere birim testi, birim testlerinizin daha yönetilebilir bölümler içerisine gireceği alanların bozulmasına yardımcı olabilir.
Yani sevdiği yapılandırma arayüzü olabilir:
public interface IConfiguration
{
public string Host { get; set; }
}
böyle (genellikle kurucusuna) bir parametre olarak bir IConfiguration sınıfını kabul edeceğini test etmek için sınıfı: Sonra
public class MyClass
{
IConfiguration _config;
public MyClass(IConfiguration config)
{
_config = config;
}
public void MyMethodToTest()
{
}
}
senin Test, arabiriminizi potansiyel olarak değiştirip birim testinizi etkileyebilecek bir harici konfigürasyon dosyasına bağlı olmaktan ziyade konfigürasyonu geçmek için kullanabilir:
[Test]
public void Testing_MyMethodToTest()
{
// arrange
var config = new Configuration { Host = "My Test Host" };
// act
new MyClass(config).MyMethodToTest();
// Add assertion for unit test
}
Ve gerçek uygulama, yapılandırma sınıfı oluşturmak AppSettings'i gelen değer (ler) ile yük ve ben de benim test projesi için aşağıdaki eklemek zorunda anlamına Senin uygulanması
içine geçerdi. ' appSettings>' –
Evet, haklısınız – aquaraga
Çalıştı. Bunu asla bilmiyordum. Yardım için teşekkürler. –