Comments (2)
Why would integrations tests have to be any different for micro-frontends? Micro-Frontends are an architectural style to build big apps. If you want to test functionality across function verticals, you employ exactly the same methods that you'd emloyed to test yarr big olde' monolithic app. But using a composition-based approach, you can:
- version your components and hopefully rely on them sticking to SemVer and thus prevent breaking things by using meaningful versions (as you suggest); one feasible, but very specific approach for this is Canopy's Sofe
- test your components in an isolated way
If you understand components not as a mere "buy button" but an app feature (in contrast to a product feature) that are developed in real verticals (meaning they are aligned with the backend) - you can considerably narrow down the test effort. As @naltatis says, you'd want to do most of your tests at the component level and only do few high-level integration tests. Of course with a micro-frontend architecture you could test the integration of different components isolated from the real app in a small testbed application to make sure, that this combination will work in your real app.
from micro-frontends.
This is indeed a tricky topic.
Features inside one vertical are tested by the team itself. This is where we write most of our tests.
To make sure all pieces work together we also had projects where we've implenented an additional higher level integration test that tests a complete customer journey (eg. from homepage through checkout). For this to work the team responsible for this test must have a reliable way of identifying the relevant parts on the page (buy button, success messages, ...). The requires some coordination.
Another alternative is, that each team directly tests its direct integration points with the other teams.
I've added integration testing to my writing todo list.
from micro-frontends.
Related Issues (20)
- Nodemon HOT 1
- Apply for translation HOT 7
- Server Side Rendering HOT 1
- Can we achieve this with angular elements HOT 1
- Micro-frontends as an advantage to using web components with a headlessCMS
- Team Blue Missing! HOT 1
- share common resources between teams HOT 3
- Thanks about micro-frontends concept. HOT 1
- Any ETA for navigation reference? HOT 4
- micro frontend
- Added Portuguese Translation HOT 1
- Added Korean Translation HOT 3
- Misleading diagram wrt frameworks HOT 2
- Why did you start to call component architecture as "microfrontends"? HOT 5
- How to have error handling mechanism in microfrontends? HOT 1
- Universal Composition: Render Call Question HOT 2
- Integrate micro frontend from different repo? HOT 1
- Can we create composite app with React and Jinja Template together?
- Added Polish translation HOT 1
- Citation of the page
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from micro-frontends.