Can you unit test a private method? How do you do it?

The answer is No. We cannot unit test a private method.

  • Unit Tests are designed to test the functionalities of components which are exposed to other components for consumption.
  • Private methods are designed to hide functionality from the other components as a part of data abstraction.
  • So its not a good practice to try unit testing a private method.
  • We can instead try unit testing a public method which calls this private method and assert the overall expectation.

The answer is No. We cannot unit test a private method.

  • Unit Tests are designed to test the functionalities of components which are exposed to other components for consumption.
  • Private methods are designed to hide functionality from the other components as a part of data abstraction.
  • So its not a good practice to try unit testing a private method.
  • We can instead try unit testing a public method which calls this private method and assert the overall expectation.

Buy Me A Coffee

Found this article helpful? Please consider supporting!

Ram
Ram

I'm a full-stack developer and a software enthusiast who likes to play around with cloud and tech stack out of curiosity. You can connect with me on Medium, Twitter or LinkedIn.

Leave a Reply

Your email address will not be published. Required fields are marked *