As part of the project I’m currently working on we are generating word documents. We use Aspose.Words for the ease of automation. In version 15.2.0 built-in document comaprison was introduced. This came to a great relief since…
don’t mock third-party libraries
There are two problems when mocking a third-party library. First, you can’t use the tests to drive the design, the API belongs to someone else. Mock-based tests for external libraries often end up contorted and messy to get through to the functionality that you want to exercise. These tests are giving off smells that highlight designs that are inappropriate for your system but, instead of fixing the problem and simplifying the code, you end up carrying the weight of the test complexity. The second issue is that you have to be sure that the behaviour you implement in a mock (or stub) matches the external library. How difficult this is depends on the API, which has to be specified (and implemented) well enough for you to be certain that the tests are meaningful. - Steve Freeman
Moving to end-to-end testing has allowed us to integrate early, assert on results we would expect when running in production, and enabled to get rid of layers of abstractions.