Writing maintainable tests using the data driven approach