Port can be damaged even if you are able to upload to flash memory. However, it can be caused by any other error, include incorrectly working program. Anyway, you can test behaviour of Rx and Tx on ATmega16U2 via the loop-back test: connect tx with rx and via terminal you should receive your typing (Mega2560 must be disconnected or down). How did you measure Rx and Tx? Original board has Rx and Tx LEDs so it is very easy to observe an activity on serial port.Maybe you could post your schematics.
You can upload any simple code like the Blink sketch to check pin HW on 16U2.