Playing against bots is a nice way to get familiar with weapons.
However, it doesn't compare to real matches for two reasons:
1: Bots aren't as clever as humans, and don't (ab)use the cover like humans do.
2: You actually hit the bots when playing against them
So I suggest two changes:
1: Make the bots camp a lot more behind cover to simulate real players.
2: Give us a lag-compensation simulation option:
Bad: You have a full seconds delay on your actions and miss shots you clearly should have hit at all times
Average: You have a half second delay on your actions and miss shots you clearly should have hit versus strafing opponents
Good: You have a noticeable delay on your actions, but only miss strafing SMG-users
Best: The bots are half a second behind you and miss you even when they aim directly on you
Without this latter option, I simply cannot improve my gunplay in Black Ops 2 in local games, because the guns don't act anywhere near what they do in local games online.