Let’s face it, writing bean property tests is possibly the worst use of time. But they need to be done.
For example. If testing a String property for propName a call such as the following:
testProperty(target, "propName", String.class);
testProperty(target, "propName", String.class, "expected initial");
Would validate that:
getandsetmethods exist.- If using expected value a test to
getcallsassertEqualsfor the given value. - (
get,is)/setmethods behave as expected.
I could go an start writing these implementations, but I want to know if there is something available to facilitate this. Other optional attributes could be used to validate that null is allowed or use JSR-303 bean validation to validate the field.
There are quite a few existing code libraries/snippets that make this easier. In doing a quick search I found a few that have potential:
I have seen someone take the first example I listed (nice and simple because it’s just a single class) and modify it to better fit their needs.