Testing strategy for micro front ends

Hi all,

has anyone got experience with testing and working on micro front ends?
Any tips on what to look out for? I have been reading this article linked below and it only mentions testing very briefly.

Mainly that you should follow the general principles of testing each micro front end well in isolation as you may do with a front end monolithic application, but then the gap is integration testing.
So you could use selenium for example to cover user journeys focused on the integration of many micro front ends.

I guess that all makes sense but I wondered if anyone has worked on micro front ends and also if you had the same sort of strategy for the back end or if this was done regardless of how the back end was being developed.

Thanks for sharing your experiences!

2 Likes

Kind of keen to as always keep the conversation going and to start the ideation with a few questions really. Even if I have zip relevant experience. I’m starting to do some web testing on a monolithic- to - microservices system and doing web testing myself now, and noticed the linked article talking about the application architecture.

  • For me, as an ex-coder I would be interested in finding what causes the app to “break” integration wise, and get the devs to tell me stories about what kinds of smoke tests they would like to see that check that the microservices or “micro-frontends” are all playing sane things together quickly and clearly. OR, is that exercise just a useful way to learn about the architecture and integration problems and not a good place to test?
  • I wonder if you can tell us more about what kinds of testing we are planning, just testing using the UI, or testing using the API’s as well?
  • Are the micro frontends owned by different teams, and if so will they surely want to write and maintain their own frontend or page tests in a larger framework? I’m always keen to get everyone to collectively own the product and take responsibility for the “whole” as a way of preventing silo-ing. That can only mean you will see more integration bugs than actual functional bugs if micro-frontends are allowed to be at war ever.

I’m pretty sure this is the page you are on already @punkmik , am I hearing right?

1 Like

Hey! Thanks for your thoughts and getting involved.

I have just been starting to talk about microfront ends as we might be thinking of a Proof of concept and me being me was like “and what testing are you doing for the POC?”.

So the ambitions are that there are initially teams working on different parts independently and consuming each others micro front ends to build the full app.
But the fact everything is small and hopefully consistent it will encourage cross team collaboration a lot more.

Thinking about my experiences with mircroservices the question of versioning comes up and I am not sure how that will work with micro front ends. One thing I need to ask. :smiley:

I am currently only thinking about the front end, so things we currently do for the monolith include cross browser and device testing, accessibility, and general functional testing of any logic.
But with the micro front ends comes the question of integration testing and maybe contract testing between front ends. I guess you could argue that then the test approach for FE and BE becomes more consistent potentially.
But I am just rambling now.

Thanks for helping me think because now I think I need to find out about versioning of micro front ends.

1 Like