MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Единично тестване с MongoDB

Технически тестовете, които говорят с база данни (nosql или по друг начин), не са единични тестове, тъй като тестовете тестват взаимодействията с външна система, а не просто тестват изолирана единица код. Въпреки това тестовете, които разговарят с база данни, често са изключително полезни и често са достатъчно бързи, за да се изпълняват с другите тестове за модули.

Обикновено имам интерфейс на услугата (напр. UserService), който капсулира цялата логика за работа с базата данни. Кодът, който разчита на UserService, може да използва макетна версия на UserService и лесно се тества.

Когато тествате внедряването на услугата, която говори с Mongo, (напр. MongoUserService), най-лесно е да напишете някакъв java код, който да стартира/спира процес на mongo на локалната машина и да накара вашата MongoUserService да се свърже с това, вижте този въпрос за някои бележки.

Можете да опитате да се подиграете с функционалността на базата данни, докато тествате MongoUserService, но като цяло това е твърде податливо на грешки и не тества това, което наистина искате да тествате, което е взаимодействие с реална база данни. Така че, когато пишете тестове за MongoUserService, вие настройвате състояние на базата данни за всеки тест. Вижте DbUnit за пример за рамка за това с база данни.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB различен()

  2. Как да получите деня, месеца и годината от дата в SQL

  3. Заявка на MongoDB с elemMatch за вложени данни от масив

  4. Ръководство за MongoDB с Java

  5. Вложен масив $pull заявка с помощта на C# MongoDB драйвер