End-to-end testing

End-to-end testing mostly refers to testing the whole application, which includes the controller layer, the service layer, the database, and any third-party layer. The purpose of end-to-end testing is to make sure that every component in the system is performing well and in a manner that they are supposed to. No dependency is supposed to mock in end-to-end testing. This testing is supposed to be done as an assumption of the end user, as it is using this application.

End-to-end testing in monolithic tries to cover all the possible scenarios in the application. On the contrary, the word application has very much changed in the context of microservices. In microservice architecture, every microservice itself is a small and independent application. As in a microservice, everything is distributed, so testing the whole application is challenging in itself. There are many questions raised in E2E testing, what to cover, how much to cover, and the dimensions are also diverse in microservices. E2E testing ensures that every component works together in the way it is expected to and as per the requirement.

Some frameworks help to accomplish the objective. JBehave is one of the tools to automate functional testing. It promotes behaviour-driven development (BDD), which is evolved TDD. JBehave takes user stories as input and ensures that the system response is as expected. This type of testing is much larger and complex than other types of testing.

User interface testing is the testing of the highest order, as it tests the system as an end user would use it. Testing of this level must feel like a user trying to interact with the system. All the databases, interfaces, internal, and third-party services must work together seamlessly to produce the expected results.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset