1. A method for software test, the method comprising: providing, by a computing device, at least one virtual hardware component, each virtual hardware component simulating a behavior of a hardware component associated with a to-be-tested software; and testing the to-be-tested software based on the behavior simulated by the at least one virtual hardware component; wherein multiple instances of the to-be-tested software is enabled to be tested using multiple instances of the virtual hardware component; testing multiple instances of the to-be-tested software in parallel based on the behavior simulated by the plurality of virtual hardware components; wherein the simulated behavior of the hardware component includes at least one of a normal behavior and an error behavior of the hardware component.