This Is How Microservices Testing Can Help You Manage Chaos PowerPoint PPT Presentation

presentation player overlay
About This Presentation
Transcript and Presenter's Notes

Title: This Is How Microservices Testing Can Help You Manage Chaos


1

This Is How Microservices Testing
Can Help You Manage Chaos
2
This Is How Microservices Testing Can Help
You Manage Chaos
Microservices have been in vogue since the term
was first coined back in 2011. Microservices
architecture is alleviating businesses worldwide
from their woes and worries of managing massive
software applications. These monolithic
applications were highly restrictive in terms of
scalability, technology stack and framework, and
maintenance. A minor change in one part required
the whole application to undergo deployment.
Redeploying an entire application for a slight
change is both cumbersome as well as expensive.
As a result, more and more organizations are
breaking down their monolith software
architecture into smaller, manageable
microservices. So much so that experts predict
microservices to become the default architectural
style in the coming years. As defined by Martin
Fowler, The Microservices architectural style is
an approach to developing a single application as
a suit of small services, each running in its own
process and communicating with lightweight
mechanisms, often an HTTP resource API. These
services are built around business capabilities
and independently deployable by fully automated
deployment machinery. There is a bare minimum of
centralized management of these services, which
may be written in different programming languages
and use different data storage technologies. In
a microservices architecture, services are
loosely coupled and cohesive. Each unit has the
liberty to choose its own programming language
and technology stack for the sake of the feature
or product it is developing. All of these
individual units using different programming
languages and framework also have their own,
independent runtime. While the benefits of a
microservices architecture are vast, the
challenges are no less. The biggest challenge is
aggregation of all
3
Key reasons for Integrating Performance Testing
Tools in the world of DevOps
the individual products or services and their
integration with one another. As Sam Newman
points out, Getting integration right is the
single most important aspect of the technology
associated with microservices in my opinion. Do
it well, and your microservices retain their
autonomy, allowing you to change and release them
independent of the whole. Get it wrong, and
disaster awaits. For such a diverse
architecture, testing on a common framework is
not feasible. The several moving parts and
ephemerals within such an architecture create
monitoring difficulties, consequently leading to
increased complexities and overhead expenses. If
monolith applications presented the setback of
snail pace and heavy protocols, microservices
present the quandary of communication gaps and
uncoordinated movement. When we talk about
testing microservices, the strategy should
involve both technical as well as business
standpoint to be successful. Let us discuss how
microservices testing can help mitigate chaos
that might ensue due to communication latency,
expensive tracing, and high infrastructural
complexities Take a multi-tier testing
approach Given the numerous ephemerals within a
microservices architecture, it is not practical,
or even possible, to test all of them on a common
framework. The single test framework that was
used for the monolith applications does not stand
valid for the individual, smaller service units.
This is because, the single-tiered monoliths run
as a single process in the production
4
This Is How Microservices Testing Can Help You
Manage Chaos
  • environment. On the other hand, each microservice
    has its own individual run time, thus, demanding
    a break-down of the testing framework as well.
  • Initially, it was believed that a microservices
    architecture will significantly reduce the need
    for regression testing. However, testing at every
    stage, after each code change, is still very
    critical. It has just become less tedious and
    more manageable with microservices. Taking a
    multi-tiered approach in testing, as against the
    single-tier test strategy, yields better and more
    efficient test results
  • Unit testing This involves checking of all the
    individual units in a software to see if they are
    behaving the way they are supposed to. Unit
    testing helps breaking down test suites into
    smaller fragments and faster turnarounds.
  • Integration testing This level is to check how
    the individual units behave with each other. It
    helps in detection of interface defects by
    verifying the communication channels and
    interactions between the units.
  • Read Full Blog at
  • https//www.cigniti.com/blog/testing-microservices
    -architecture-strategy/

5
Write a Comment
User Comments (0)
About PowerShow.com