Property testing and its connection to learning and approximation