Use an etching primer to cope with the aluminium – it will work on the steel as well.
Otherwise, any normal, reasonable-quality paint suitable for metal will be fine – and the most expensive coach-painting finish is still not proof against chipping and scratching. That’s a matter of care in storage, transport and driving; not the grade of paint and painting.
Though not as cheap as brush painting, aerosol paint from a motor-factors is fine for such work.
To be honest, for the chassis I’d consider brush-painting as using a spray-can for an assembly like that would probably waste more paint on the backing than is applied to the work itself. Small brushes also reach into corners that a spray might miss. Most of the locomotive’s running-gear will be hidden anyway.
The spray-can comes into its own more for the bodywork with its large flat or gently curved areas.