The traditional techniques generally do not resolve the problem of low efficiency caused by the count of failed tests due to different faults.Besides,programmers are difficult to finally fix the fault according to the suspiciousness of a program element which lacks program context.A program spectrum concept lattice-based software fault localization (PSCL-SFL) technique was proposed.Firstly,program spectra were abstracted according to test history,and then program spectrum concept lattice was constructed,so the generalization or specialization of program elements and tests could be hierarchically showed.Secondly,a novel suspiciousness computation was defined by PSCL-SFL technique.Finally,based on wasted effort metric,the experiment on a real program Tetris showed the effective of PSCL-SFL technique.