McCarron impressed during a 25-11 preseason loss at Tampa Bay on Monday night, going 11 of 15 for 97 yards. He led an 80-yard touchdown drive.
McCarron, a fifth-round pick from Alabama last year, missed his rookie season with a sore passing shoulder. He also sat out the first preseason game with a pulled muscle in his side. Johnson was 11 of 21 for 175 yards in the first game, but didn't play on Monday night.
The backup quarterback role was one of Cincinnati's biggest questions in camp.
Follow Joe Kay on Twitter: http://twitter.com/apjoekay