I am currently working in a team, which, when I joined them did not do any sort of unit or integration testing.
Over the last 2 years I have bit by bit pushed dotnet unit testing to a point where it is now considered part of day to day workflow. Integration testing have also had a place and are coming up once again as a point of focus which is great. The team generally agrees that dotnet unit tests are definitely worth it and that dotnet integration tests are also a great addition, although they take longer to write and set up.
The area where unit tests are almost non-existent is our angular/UI code. I've pushed for us to add unit tests for re-usable functions, etc, however component unit testing has largely been left alone as both myself and the rest of the team struggle to quantify whether it is worth it or not. A few attempts to add unit testing to the UI have ended up with us writing a bunch of unit tests, however none of us really understood the value.
Just recently, an experienced (and quite openly opinionated) front-end developer joined the team and his opinion is that angular UI unit testing is completely and utterly worthless. I am afraid of simply agreeing with this point of view as this was similar to the team's opinion about dotnet unit testing initially and now they think the opposite.
Question: What do you test in your angular application and how do you think it improves your software quality/stability?
Possible discussion points: Do you have unit tests? If so - what do you test? Components? Services? State? Actual DOM changes? Do you instead have end to end tests? How would you quantify the time(cost) vs benefit?
Any insight/etc would be highly valued!
Thanks!