In both your examples you have string literal "Test" and in 2) you have another string literal "new". During runtime you create another string with content of "Test" from the string literal "Test" and then create new one containg "Testnew".
In modern Java there is no good reason to use new String(someString);
In older version there was one. String.substring used to create string that was referencing original string and with offset and length restricting it to the vanted value. Therefore if you had long string and created short substring from him, forgot all references to the long one and kept the substring you still had one reference in the substring to the original long string. Therefore the long string would not get GCed. If you used substring = new String(substring), you created separate instance without reference to the original.
Therefore if you target older java platforms, you still should consider using the new String(substring) approach (consider, not just use it!!! You need to identify whether default behavior is problem first).
This change happened between JDK 6 and 7. viz article on programcreek