shouldComponentUpdate yöntemini uygulayan bir React Component'im var ve bunu test etmek istiyorum. İdeal olarak, bir ünite testindeki bileşen üzerindeki bazı pervane veya durumu değiştirebilir ve yeniden işlendiğini veya doğrulayamadığını doğrulayabilirim. Bu yardımcı olursa enzyme kullanıyorum.Birim testi nasıl yapılır React Component shouldComponentUpdate yöntemi
cevap
Muhtemelen doğrudanComponentUpdate'i çağırmalıyım.
şey bileşeni gerçekten oluşturulup eğer/oluşturmaması belirleyerek test etmek çalışılıyor
const comp = shallow(<Comp {...props} />)
const shouldUpdate = comp.instance().shouldComponentUpdate(nextProps, nextState)
expect(shouldUpdate).toBe(true/false)
gibi bu değer daha muhtemelen daha sorun; Bunu enzimi kullanarak nasıl yapacağını bile bilmiyorum. İşlenmiş çıktıyı, önceki çıktıyla aynı olmadıkça, muhtemelen shouldComponentUpdate'den false döndürmeyeceğinizden, çıkarılan çıktıdan gerçekten çıkamazsınız. Dolayısıyla, bir çıktının meydana gelip gelmediğini belirleme, yalnızca çıktıdan gelemedi.
Doğrudan arayarak test etmek bana göre iyi görünüyor. React uygulamanızın geri dönüş değeri doğru bir şekilde kullanıldığında (eğer daha büyük problemler varsa), güvenlidir.
Bence birim testleri için hiçbir şey yapmamalısınız ve bu yüzden ünite testleri için enzime ihtiyacınız yok.
Vakanız için hızlı bir ünite test örneği.
const classContext = {
props: {},
state: {}
};
const nextProps = {};
const nextState = {};
const shouldUpdate = yourComponent.prototype.shouldComponentUpdate.call(classContext, nextProps, nextState);
expect(shouldUpdate).toBe(true/false)
- 1. NSCoding nasıl birim testi yapılır?
- 2. Hadoop: Birim testi nasıl yapılır FileSystem
- 3. Birim web testi nasıl yapılır - JavaScript
- 4. Çeşitli veri kaynaklarıyla Birim testi nasıl yapılır?
- 5. Birim testi $ pencere yeniden boyutlandırma yöntemi
- 6. Python'da alaylı bir dosya nesnesiyle birim testi nasıl yapılır?
- 7. Birim testi nasıl tanımlanabilir?
- 8. Temel Birim Testi ve Birim Testi
- 9. Birim testi
- 10. Jest.js'yi kullanarak bir React Component stilini nasıl test edebilirim?
- 11. React Router v4 Yönlendirme birimi testi
- 12. Denetleyici birim testi, thin3
- 13. Python unittest kullanarak dosya yazma fonksiyonlarının birim testi nasıl yapılır
- 14. Android'de gerçek HttpURLConnection ile birim testi nasıl yapılır?
- 15. Windows Phone 8.1 biriminde birim testi nasıl yapılır?
- 16. JMS (ActiveMQ) ile birim testi
- 17. iPhone'da birim testi nasıl çalışır?
- 18. Otomatik C birim testi
- 19. Javascript Sandbox birim testi
- 20. Silverlight 4 Birim Testi
- 21. Birim testi özel sınıflar
- 22. Birim Testi CacheManager
- 23. symfony2 birim testi doğrulama
- 24. C++ Birim Testi
- 25. Birim Testi ASP.net Page_Load
- 26. TaskScheduler.FromCurrentSynchronizationContext - birim testi
- 27. Birim testi Activity.startService() çağrısı?
- 28. Birim testi NHibernate UserTypes
- 29. C# Birim Testi (Nunit) bir konsol uygulamasının Ana yöntemi?
- 30. Birim Testi: Klonlama ve eşitlik
Konuştuğunuz şeyin bir birim testi olduğunu sanmıyorum, değil mi? İdeal olarak, "shouldComponentUpdate" ini izole olarak test edebilmelisiniz. – speckledcarp