is there a tutorial and patterns to write unit tests in Unity ?
Should we use the classical c# way and test the code or should we test the interactions in UI ? If so how?
In Unity 2017.2
Unity has a feature called Unity Test Runner which is an integration of NUnit with the Unity Editor.
You can access it through the menu: Window > Test Runner
For more information, see the documentation in the Unity Manual