Mobile agent technology is one of the fastest growing and emerging areas for application development in the past few years. A mobile agent is a computer program that acts autonomously on behalf of a user/application and travels to the network of diverse machines. For the mobile agent's technology to survive, it is necessary that the mobile agents should be reliable. In this prospective, fault tolerance for mobile agents and mobile agents systems is of substantial importance. This survey paper evaluates fault tolerance techniques used in mobile agents and mobile agent systems. These techniques are evaluated on the basis defined parameters. Survey concludes that MoCA and CHAMELEON are appropriate techniques for fault tolerance in mobile agents and mobile agent systems respectively.