Business Intelligence (BI) is a process of gathering, analyzing, and transforming raw data into accurate, efficient, and meaningful information which can be used to make wise business decisions and refine business strategy.
BI gives organizations a sense of clairvoyance. Only the perception is not fueled by extra-sensory ability but by facts.
Business Intelligence testing initiatives help companies gain deeper and better insights so they can manage or make decisions based on hard facts or data.
The way this is done has changed considerably in the current day’s market. What used to be offline reports and such is now live business integration.
This is great news for both businesses and users because:
- Businesses know what is working and what is not easily
- Better User experience with the software
Recommended read => Business Process Testing (BPT)
BI is not achieved with one tool or via one system. It is a collection of applications, technologies, and components that make up the entire implementation.
To simplify and show you the flow of events:
User transactional data (Relational database, or OLTP) Flat file, records or other formats of data etc. -> ETL processes-> Data Warehouse->Data Mart->OLAP additional sorting, categorizing, filtering etc. provide meaningful insights – BI.
Business Integration is when this analytics effect the way a certain application works.
For example, Your Credit Card might not work at a new location because BI alerts the application that it is an unusual transaction. This has happened to me once. I was at an art exhibition where there were artisans from different parts of the US. I used my credit card to buy a few things, but it would not go through because the seller was registered from a part of US that my credit card was never used at. This is an example of BI integration to prevent fraud.
Recommended product on Amazon or other retail sites, related videos on video sites etc. are other examples of Business Integration of BI.
From the above flow, it is also apparent that ETL and storage systems are important to successful BI implementation. Which is why, BI testing is never an independent event. It involves ETL and Data warehouse testing as integral elements. And as testers, it is important to understand and know more about how to test these.
STH has you covered there. We have articles that talk about these concepts. I will provide the links below so we can get those out of the way and focus on BI alone.
- ETL Testing / Data Warehouse Testing – Tips, Techniques, Process and Challenges
- ETL vs. DB Testing – A Closer Look at ETL Testing Need, Planning and ETL Tools
One more thing that Business Intelligence testing experts almost always recommend is: Testing the entire flow, right from when the time data gets taken from the source all the way to the end. Do not just test for the reports and analytics at the end alone.
Therefore, the sequence should be:
Business Intelligence testing Sequence:
#1) Check the Data at the source:
Business Data usually does not come from one source and in one format alone. Make sure that the source and the type of data that it sends matches. Also, do a basic validation right here.
Let us say a student’s details are sent from a source for subsequent processing and storage. Make sure that the details are correct, right at this point itself. If the GPA shows as 7, this is clearly over than the 5 point system. So, such data can be discarded or corrected right here itself without taking it for further processing.
This is usually the “Extract” stage of the ETL.
#2) Check the data transformation:
This is where the raw data gets processed into business targeted information.
- The source and destination data types should match. E.g.: You can’t store the date as text.
- Primary key, foreign key, null, default value constraints, etc. should be intact.
- The ACID properties of source and destination should be validated, etc.
#3) Check the data Loading
(Into a data warehouse or Data mart or anywhere it is going to be permanently located):
The actual scripts that load the data and testing them would be definitely included in your ETL testing. The data storage system, however, has to be validated for the following:
- Performance: As systems become more intricate, there are relationships formed between multiple entities to make several co-relations. This is great news for data analytics, however, this kind of complexity often results in queries taking too long to retrieve results. Therefore, performance testing plays an important role here.
- Scalability: Data is only going to increase not decrease. Therefore, tests have to be done to make sure that the size of the growing business and data volumes can be handled by the current implementation or not. This also includes testing the archival strategy too. Basically, you are trying to test the decision- “What happens to older data and what if I need it?”
It is also a good idea to test the other aspects such as its computational abilities, recovery from failure, error logging, exception handling, etc.
#4) BI Report Testing:
Finally, the reports, the last layer of the entire flow.
This is what is considered Business Intelligence. But, as you can see from the above, the reports are never going to be correct, consistent and fast if your preceding layers were malfunctioning.
At this point, look for:
- The reports generated and their applicability to the business
- The ability to customize and personalize the parameters to be included in the reports. Sorting, Categorizing, grouping, etc.
- The appearance of the report itself. In other words, the readability.
- If the BI elements are BI integrated, then the corresponding functionality of the application is to be included in an end-to-end test.
BI Testing Strategy:
Now that we know what to test and resources for ETL and Data Warehouse testing, let’s look at what process the tester’s need to follow.
Simple, a BI testing project is a testing project too. That means the typical stages of testing are applicable here too, whether it is the performance you are testing or functional end to end testing:
- Test planning
- Test strategy
- Test design (Your Test cases will be query intensive rather than plain text based. This is the ONE major difference between your typical test projects to an ETL/Data Warehouse/BI testing project.)
- Test execution (Once again, you are going to need some querying interface such as TOAD to run your queries)
- Defect reporting, closure etc.
BI is an integral element of all business areas. E-Commerce, Health Care, Education, Entertainment and every other business relies on BI to know their business better and to provide a killer experience to their users.
We hope this article gave you the necessary information to explore Business Intelligence testing area much further.
About the author: This post is written by STH team member Swati.
Have you been a BI tester? Please do share your experiences, comments and questions below.