hardware reliability testing methods