I'm trying to understand the purpose of google-mock
, Google's C++ mocking framework.
I have already worked with gtest
earlier, but still I can't understand what gmock
is. Why do we need it?
gtest
is used for unit testing. What do we need gmock
for then, if gmock
is required for unit testing
?
"Google Mock is not a testing framework itself. Instead, it needs a testing framework for writing tests. Google Mock works seamlessly with Google Test. It comes with a copy of Google Test bundled. Starting with version 1.1.0, you can also use it with any C++ testing framework of your choice. " - Google Mock, System Requirements
Mock are like objects, defined in such a way to mimick the real-deal by supplying controlled behavior. For instance, to test a stock tick application, you'd create a fake stock data provider that created fake stock quotes to test your code with. Think of the word mock, literally means 'to mimic'.