We have identified several areas in our projects that could leverage property-based testing.
Aim of this thesis should be finding mature enough testing framework (or create your own if necessary) and design and implement a set of property based tests against a relevant FeedHenry project.
Property-based testing is interesting tool in the Quality Assurance toolbox, especially when targeted outside of its comfort zone of unit testing of libraries to more difficult integration testing of running services.
When successful, it can find otherwise hard-to-reproduce errors, such as race-conditions in synchronization as well as significantly broaden the surface area of testing . On the other hand, designing test-cases is harder because of the additional machinery.
We would like to see the discussion of both the choice of the testing framework, choice of the system under the test and the design of the test-cases themselves, because we think they are of equal importance to provide enough value for the effort.