Yes, I do need to mock CRUD operations without accessing the database. As I said, code was debugged and tested with the database, but to comply with the company policy I do need to add these "fake" unit tests. I haven't used Mockito for about 10 years and don't want to spend much time to refresh my knowledge. I do hope that NB have some mocking features that will help me. ________________________________ From: Leo Donahue <donahu...@gmail.com> Sent: Thursday, February 29, 2024 1:29 PM Cc: NetBeans Mailing List <users@netbeans.apache.org> Subject: Re: Using Mockito with Netbeans
On Thu, Feb 29, 2024, 13:33 Greenberg,Gary <ggree...@visa.com.invalid> wrote: I already have all DTO and DAO classes written and debugged. However, per company policy, unit test coverage must be no less than 75%. Right now, I have it less than 30%, because this is database driven project and to comply, I need to create tests mocking database operations. >>mocking database operations Do you mean that you need to mock CRUD in a unit test? If you create mock data in the test, you control the mock data which means you're testing a hard coded value or testing for null and the database is never used. Is that valuable? Suppose you unit test pinging the database, as in select something and it fails because the database is down, or today no permissions were granted to your test account or your test user password expired... now what. The unit test says something is broken but it may not be in your control. ________________________________ From: Pieter van den Hombergh <pieter.van.den.hombe...@gmail.com<mailto:pieter.van.den.hombe...@gmail.com>> Sent: Thursday, February 29, 2024 7:49 AM Cc: NetBeans Mailing List <users@netbeans.apache.org<mailto:users@netbeans.apache.org>> Subject: Re: Using Mockito with Netbeans generated tests from existing classes sounds like testing after the fact. Then I would consider generating the DAOs from information available, like the database schema or the DTO classes which should be of the record type. but if you still insist, make the DAO tests inherit from a TestBase class that configures the mocked data source. If the DAO accepts the data source or a connection as dependency in the injection sense, you are good to go and can verify the proper use of the dependency by the DAO, which is the purpose of mocking. I may find some time tomorrow to come up with a more elaborate answer. Kind regards, Pieter van den Hombergh. met vriendelijke groet Pieter van den Hombergh Op do 29 feb 2024 01:40 schreef Greenberg, Gary <ggree...@visa.com.invalid>: I am quite used to generate unit tests for my code using Netbeans Tools->Create/Update Tests. JUnit is great. However, now I need to create tests for some DAO classes where I will need to mock database access. I plan to use Mockito for that. Does Netbeans have any features automating Mockito test creation? Gary Greenberg Staff Software Engineer