Smoke testing originated from hardware testing, where a device was considered to have "passed" if it did not catch fire or smoke upon first powering up. In software, it refers to a preliminary check to ensure that the basic functionalities work before deeper testing.