I am working on an application that has been written in AngularJS. I only recently joined this company, so was not involved in the design or writing of the application as it currently stands.
The development team are looking to integrate automated testing into the development methodology/ life cycle, and I have been given the task of researching testing frameworks that we could look to implement/ use with our code.
I have been following the Jasmine/ Karma tutorial at https://scotch.io/tutorials/testing-angularjs-with-jasmine-and-karma-part-2, for setting up Jasmine/ Karma as the testing suite for an AngularJS app, and while it does seem to provide some useful tools/ methods for testing the code, and could certainly be useful, I haven't come across anything in the tutorial that indicates that it's possible to use this framework to simulate user interaction with the front end, and test the application's responses to user interaction... which is what we are specifically looking to automate.
All of the tests that the tutorial runs through with you seem to be for testing the logic of the code written- none of them seem to test for user interaction with the front end (the web elements).
The reason we're looking to automate this testing is because as we add new features/ fix bugs & role the versions out to our customers, we will need to test everything on the front end every time, to ensure that none of the changes we've made have broken anything that our clients are using/ will need to use. It would save us a huge amount of time and effort if we could just run a batch of scripts against every version of the software we release, to test all of the front end elements that haven't changed between versions.
Is there a way that I could use Jasmine/ Karma to do this, or is there another tool that would be better suited to specifically testing the user interaction with the application?