Arduino Sainsmart uno communication problem
You are doing 2 things wrong in your program:

First is using serial.write(), which writes bytes rather than ASCII.

Second is you are declaring a string literal as a char instead, you must declare a string using  double quotation marks (which is ") so that your program should read:

Serial.print("Test!");


When you declare 'Test !'  you are doing it wrong, and it will only take the last char in the string, which is '!' - using single quote marks is for a single char declaration, like '!' or 'T', and you can make an array of chars into a string if you wanted, like this:

char array[] = {'T', 'E', 'S', 'T', '!' };
Serial.write(array, 5);


but why would you when the earlier one works better?