A flexible plugin-based GUI testing framework