Selamlar Stackoverflowers,
Ben bir iletişim soyutlama katmanı var olduğu bir uygulama var. (: HTTP, TCP prizler, UDP prizler, vb gibi) bu katmanda her uygulama, bir connector, bağlı bir eş ile veri alışverişi bir yol ile benim uygulama sağlar çağırdı.
Örnek başına, böyle read, write, open ve close gibi yöntemler uygulayan bir Connector_Tcp
sınıfı .
Ben o sınıf için bir birim testi yazmak gerekir. Ben birim testleri mümkün olduğunca az bağımlılıklar gibi olması gerektiğini biliyoruz. Ne yazık ki, bu durumda, bağımlılık bir sistem kaynak: a soket; ve ben bunu açamıyorum.
I need some advice on how to go about unit testing this class.
Bu sınıf bir sistem kaynağı kullanıyor olsa bile bence, o kadar test edilmelidir tüm diğer connectors benim uygulama tarafından kurulan standardını saygı emin olun.
Ben çarpışmaları (Address already in use hataları) bağlanması ve engelleme gibi şeyler hakkında endişe duyuyorum. Liman benim uygulama ile ilgisi olan bir sistem servisi tarafından zaten kullanılıyor çünkü birim test başarısız istemiyorum.
Benim gün içinde birim testleri bir sürü yaptım, ama hiçbiri prizler böyle bir düşük seviyeli kaynak dayanır.
Nasıl bir soket-bağımlı bir sınıf test birimi hakkında gitmek istiyorsunuz? Her birim için bir yuva açmaya? Ona bağlanmak ve bunu test etmek için daha sonra tek bir sunucu sınıfı, bir el-tanımlı soket kaynak kullanın ...?
Benim sorun gerçekten şu sanırım:
Birim test başarısız olursa ... ne bileyim eğer:
- Soket başka bir işlem tarafından kullanılıyor zaten;
- Birim test kötü yazılmıştır; veya
- Yöntemi (bir birim test değer budur) hatalı davranır.
I need the unit test to test only if the method has been behaving properly or not...