Check that battery terminals and engine ground strap are clean and tight. Use a digital multimeter to check battery voltage - should be at least 12.6v standing (engine off), and should not drop below about 10v while cranking for 15 seconds - do not crank any longer than this. If either of these voltages are low it indicates the battery is undercharged or faulty.
Bill G