软件测试的目的是为了发现软件中的错误,而非证明软件的正确性。测试在软件实现过程中就开始了,并且持续进行,直到软件交付用户使用。即使进行了充分的测试,也不能保证软件不存在任何问题,因为可能存在未被发现的错误或新的使用场景下的未知问题。因此,选项B正确,其他选项均有误。