hardware testing