I had a brief look at CPT in the past, but not recently.
The main drawback when using such software (or flashcards, if that's what you choose) is that success is determined by knowing moves alone. These methods don't check that you know why a move was played. So you need to do this mentally yourself, and penalise yourself for moves you know but don't understand.