Adaptive random testing through test profiles