reactive testing