refactored Tester