When I started my career in software testing, I was a biologist without business experience, but I knew how to crunch data through statistics, Python and machine learning.
Over the past 11 years, software testing has been my main profession.
With technological changes, more and more companies are into Big Data (as a part of data science), and as a biologist, trained in crunching lots of data (genetics, bioinformatics), I became curious.
I thought, “Is there a way to combine my knowledge of statistics and crunching Big Data and software testing in today’s business?”
There is. Several methods (statistics, data mining, web scraping) and programming languages (R, python) used in data science can also be used in software testing.
Both software testing and data science are empirical studies trying to answer a specific question. The answer to this question can be derived by using tools or methods on the available data.
This is important—Don’t let the tool or method determine how the answering process proceeds. Let the question be the determinant.
Be open-minded! Remember that a fool with a tool is just a fool.
Data science and software testing
Data science is not just statistics. It is an interdisciplinary field like bioinformatics, combining mathematics, statistics, computer science, information science, etc. Just like Big Data, it’s a buzzword, but a data scientist, according to Coursera, has one goal:
Ask the right questions, manipulate data sets, and create visualizations to communicate results.
It’s the same in software testing. Without the correct question, data set and visualization (report), a software tester can’t inform the stakeholder about the state of quality of the object under test.
I know testers have tools like Jira, Microsoft Excel and Selenium to help them. Why should we have knowledge of data science, then?
As I said before, a fool with a tool is just a fool.
You may know how to use multiple test tools, but the most important thing a tester does is ask the right questions. This triggers the other stakeholders to answer, and through those questions and answers, possible issues are found.
Data science is all about asking the right questions. It can help the tester with creating questions and deriving the test set, even when the test set has missing data. The process can educate the tester on how to visualize findings.
Test tools can also do these things, but, in my opinion, a tester should be able to work with data himself. Data science can help the tester to stay critical of tools, processes and information. (Espeooking for a place to start in the realm of data science, you can find data science courses online from sites like Coursera, DataCamp or Udacity.
Try a course. It won’t be easy, but the challenge is part of learning.
Software testers will find that data science helps them in their daily work in the following ways:
- Asking open-minded, critical questions
- Test data development and processing
- Test tool selection
- Visualizing the quality of the object under test
For me, using data science has increased my ability to ask the right questions and has diminished the fear of going too deep into data.
A software tester should never be afraid to ask the right questions (to anyone!), go deep if necessary, and report his or her findings.