As an engineer on the team, I see the discussion and short conversastion on Technical Debt. No matter what, there will be a Technica Debt in the software system we build and deliver.
Likewise, when there is a Technical Debt, there will be a Testing Debt for sure. Identifying and learning the magnitude and impact of the Testing Debt is part of my job.
My Understanding of Technical Debt
- It is the cost of additional rework caused by choosing the quickest solution rather than the effective solution.
- Making decisions based on speed above all else is one factor that leads to the Technical Debt.
- Technical Debt has pros and cons.
- The unintended Technical Debt will not come to notice immediately or sooner.
- This is one of the challenges we have to deal with.
- Because intentional technical debt is what we are aware of from the decision made.
- The impact of unintended technical debt has to be managed by every team involved in the software development.
Starting With The Testing Debt
I don't know if the term Testing Debt exist in the industry!
- I use this term to share and keep stakeholders informed about the rework which we have to do as a result of Technical Debt.
- On reading, what is Technical Debt, can we relate to what is Testing Debt?
- Most times, the testability, automatability and observability characteristics of a system will be affected as a consequence of Technical Debt.
- Further, to compound the cascading effect, the Testing Debt will come in.
- One of the major impact due to the Testing Debt is the change in the Determinsitic capability seeded with a test
- Reworking on this deterministic capability is not simple and straight in all cases for the change introduced in the business operations, tech layer and infrastructure.
- To speak in terms of engineering, the testing is part of technical activity.
- It looks funny to me when the one portrays the testing team as non-technical and label with terms.
- For example, manual, repeatable, repetitive, etc.
Do You Know Your Testing Debt?
- Does this effect your testing infrastructure, regression suite and automation suite that you have in place?
- Do we have [or given] enough time and resources for Testing Team to work and fix this and keep the pipeline running seamlessly?
- This is not just about time and resources!
- For the change in tech stack and engineering of the system, the Test Engineering has to adapt to it and challenge it.
- If the Test Engineering does not challenge the engineering of the software sytem, we are not in a position to see the perspectives of risks and problems
- Eventually, we will not even be in place to learn what are the no-risk perspectives and aspects of the system
- How do I manage this so that I can turn around quickly to the context and keep the pipeline smooth?
- This is a challenge to every Test Engineer who faces the effect of Technical Debt.
- This is something not easy to identify and learn, while we can identify and learn the unintended Technical Debt to some extent.
- This will exist; it will impact and hit all the environments, everyday!
Testing Debt and Test Engineer
- For this, the Technical Debt should not be damanaging the deterministic attribute which is seeded to a test.
- Picking and integrating such a determinsitic layer within the layer of testability, automatability and observability is a mark of a skilled Test Engineer and Test Engineering.