Unit tests just help to make sure that the units you have right now are doing their jobs. Obviously if you change what units you have or how responsibilities are allocated among them then you will need corresponding changes in the unit tests.
I don't see why. There are some type of code where I think unit testing is very beneficial and other types of code where I'd probably prefer a different style of testing. But for code where unit testing helps I find it useful independent of any of other types of testing that may or may not be happening as well.
Unit tests just help to make sure that the units you have right now are doing their jobs. Obviously if you change what units you have or how responsibilities are allocated among them then you will need corresponding changes in the unit tests.