Cannon = explosive shells. Machine guns = inert bullets (generally).
A real bit of thread drift, but I once went to the Proof Unit at Cold Meece, Staffordshire to watch 30mm being proof tested. The requirement was that the fuse did not arm until a safe time/distance from the muzzle. This was tested by firing rounds through a piece of sheet metal closer than the arming distance. Similarly, the shell had to burst after passing through the target so that the damage occurred inside the structure. Again a piece of sheet metal was employed and the round was observed as it passed through. The latter test was quite sobering when you reflected upon the damage that a single round might inflict upon an aircraft.
YS