The identification of the source of heavy metal pollution and its quantification are the prerequisite of soil pollution control. The apcs-mlr, UNMIX and PMF models were employed to apportion pollution sources of Cu, Zn, Pb, Cd, Cr and Ni of the farmland soil in vicinity of an abandoned iron and steel plant. The sources, contribution rates and applicability of the models were evaluated. The potential ecological risk index revealed greatest ecological risk from Cd. The results of source apportionment illustrated that apcs-mlr and UNMIX models can verify each other for accurate allocation of pollution sources. The industrial sources were the main sources of pollution (32.41% ~ 38.42%), followed by agricultural sources (29.35% ~ 31.65%), traffic emission sources (21.03% ~ 21.51%), and natural sources of pollution were accounted for smallest proportion (11.2% ~ 14.42%). The PMF model was easily affected by outliers, its fitting degree was not ideal, and it was unable to get more accurate results of source analysis. The combination of multiple models can effectively improve accuracy of pollution source analysis of soil heavy metals. These results can provide a scientific basis for further remediation of heavy metal pollution in farmland soil.