Bir çekirdek modülünü birim sınama amacıyla alay işlevleriyle ve genel değişkenlerle ilgileniyorum.Bir çekirdek modülünü sınama
İlk olarak https://github.com/ThrowTheSwitch/CMock ile denedi ancak sorunla karşılaştı. Bunun nasıl yapılacağına dair herhangi bir yazı da harika olurdu. (çekirdek modülleri için). Burada daha fazla ayrıntı vermek için: kernel modülü olarak derleme hata yapar çünkü stdio kullanılamaz, kullanıcı alanı için derleme yapar çünkü printk gibi şeyler bulamaz.
İdeal olarak, işlevlerimde birim sınamasını çalıştıran bir kullanıcı düzeyinde yürütülebilir veya bir çekirdek modül olurdu. Sorun yaşadığım bölümler, iyi bir test yazabilmek için fonksiyonların bağlı olduğu yapılar gibi küresel bağımlılıklarla dalga geçiyor.
Birkaç questions ve articlesaboutthis geçtiniz ama bir cevap veya bu mümkün olmazdı neden kesin bir neden bulamamıştır.
I test çekirdek modülü ile birlikte etki, (CUnit veya googletest gibi uygun bir çerçeve kullanılarak durumunda) kullanıcı düzeyinde bir programın uygulanması Bu fikir gibi ama zaten yazılmış olan kod için uygulamaya koymak zordur. – andrei