What is Business Intelligence Testing

What is a BI software application all about ?
What is BI testing all about ?
How does BI application ease out the business process in the current world scenario ?
What type of industry enterprise look forward to developing a BI application ?
What are the challenges one faces while testing a BI application ?
How much of an impact can a BI application make to an organization within its peer group ?

So many questions strike at the back of one's mind when we start with a Business Intelligence domain software application with a testing perspective at the back of one's mind.

What is a BI software application all about ?
Let me just list out the terms of BI testing.
Source data, target data, data warehouse, data mart, reports, ETL - Extract Transform Load, etl logic - incremental or full , integration services, reporting services, analysis services, database engine, cubes, measures, measure groups,dimensions, facts, reports testing - drill down, drill through, build deployment. I mean there are just so many of them .

How does the chain look like ? May be something like this :
Source  -> Staging -> Datawarehouse -> Cube -> Reports

Source : Multiple data sources  such as MSSql Server, Oracle, MySql, SAP, Teradata, DB2, Sybase. It can be any combination of the listed as well as non listed ones for example as simple as flat text files. These multiple data sources can be an input data source to an application software that might help the end user take future strategic decisions.

Staging : An intermediary state of source data that act as an input to the datawarehouse where in data is loaded by the ETL logic using integration services from the source data. It is more or less the source data in its original form with those tables getting discarded that might not be needed for the report generation within the application.

Datawarehouse : It is the final entity developed within the database engine that gets created in the sequence mentioned above. It is here that the final objects get created and based on these objects the cubes are created for the analysis purpose. Here the object types that the complete data is organized into is called dimensions and facts. They as well as just like simple tables but the attributes within each dimensions and facts have a specific association within itself to resemble some realistic facts and associated information as per the business requirement.

Cube :  This is the Analysis services objects within the complete  BI application development phase. As the name suggests it is not just the two dimension tables that hold its relevance in a typical RDBMS . It is indeed a three dimensional data modeling technique wherein we analyze a data set in more than just two dimensions. The facts that are associated with an application are analyzed as per the association they have with the various parameters which in BI terms are called as measures, or measure groups. Measure groups are actually a combination of more than one related measure. Thus we get greater insights into how a specific aspect of any business decision making gets impacted with a variation in various parameters.

Reports : Reports are nothing but the cubes data getting represented onto a user friendly interface with the option to parameterise the reports as per the business needs. In simple terms it is the end product that gets developed and the data we look for in the cubes are available for view purpose in them. We can drill down and drill through them based on the scenario we need. For example we can by default see the report for any specific fiscal year as to how much sales have been materialized and then drill down onto the quarter basis , and then monthly basis, then the weekly basis and finally on the daily basis . Similarly drill through also gets applied on to the reports and the data can be visualized as per needs. Authorization and authentication is another feature that has its role to be played in the reporting services but then the authorization of the cubes over ride the privileges granted on the reports.

I hope by now we have gain some insights on what these applications resemble like and how is it different from any other typical web application . Its more of an application that delves into data and data modeling and management techniques.

What is BI testing all about ?
 BI testing is pretty different from any other application in ways more than we can just list out. Domain expertise can only make the tester's life easy in an otherwise unknown nature that such application develops . There is no way one can wait till the reports get developed that we have any UI to start testing with !!! And thats what makes it even more interesting and challenging . 

So what do we do ?
When do we do ?
How do we do ?

Do we wait till the last phase of development cycle where in the reports get deployed onto a web application and then we start testing or is it that we have scopes of starting with our testing activities well within the initial development cycle or may be even before the full flow development activities start ?
There is a scope for automation as well, loads of scope for performance testing and of course the manual has to be the core of any testing activity.
 Things really start once the Integration services packages gets into a shaped state wherein the data from the raw format gets extracted ,transformed and loaded into the new environment.That is what we call as ETL execution as well in short.Test cases authoring can be started once the ETL packages gets developed because that is where a tester's activity gets eased out. This is also the area of high automation ROI wherein the etl related test cases  can be automated using the various database automation techniques.
 Once integration services are in place we target the Analysis services section wherein the  cube testing starts at the base of which exists the dimensions and measures and measure groups. These cubes have the raw data organized in a very effectively designed and inter related manner that the real time data analysis is possible. These cubes form the basis of the reporting service that is the base of the UI testing .
 UI testing or the Reporting services testing is more on the filter and various combination of filter that can be provided with a set of inter - related measures and measure groups for the various facts as per the dimensions supplied. Within the same lies the validation of the drill down and drill through capabilities of the reports by just right click and left clicks in the reports on its graphs and the various axes.The three terms that makes sense during the data validation for the complete application is the dimensions, and fact tables . These are the actual tables that form the basis of the cube data.

 As per the data quality is concerned , the major target area is the Integration services packages that is the ETL packages and the logic with which the data gets extracted , transformed and  loaded into the target systems . It is here that we design the data loading logic that shall ensure that the junk data or data that may in no way be utilized for the reports getting generated do not load into the staging system. It is simply because the data mart is the next stage within the complete BI application development logic and for the data mart to have deal with only relevant data , staging environment must have only needed data with quality in tact. Then stored procedures come into play to arrange the data from the staging tables into the data mart tables and two different categories of data tables get created namely the dimensions and the facts. The data arrangement logic has to be validated in these tables with the major target areas being the stored procedure. These also get created during the   ETL execution phase that is the Integration services phase.Once the mart is finalized the cubes need to be tested wherein the testing involves no more the Sql queries execution but the MDX queries . Here in the measures and measure groups and their data for the various inter-related entities come up.It is done by browsing the cubes within the Analysis service engine. Finally these data becomes the base for showing the relevant reports in the UI as per the business user's requirements.

There we end up with a BI application in place ready to be delivered to the business users. Post production defects are unavoidable in these type of applications. The major cause behind the same is that the application is being developed offshore at a location far away from the end users. This results in most of the cases data not being provided that resembles their real time data due to various data security issues. However, that is how the nature of applications is . So do learn to live with that as a challenge.

ISTQB Foundation Level Certification Software Testing - 16

461. Which of the following techniques is NOT a black box technique?
a) State transition testing
b) LCSAJ (Linear Code Sequence and Jump)
c) syntax testing
d) boundary value analysis

462. Success Factors for a review include :
i. Each Review does not have a predefined objective
ii. Defects found are welcomed and expressed objectively
iii. Management supports a good review process.
iv. There is an emphasis on learning and process improvement.
a) ii,iii,iv are correct and i is incorrect
b) iii , i , iv is correct and ii is incorrect
c) i , iii , iv , ii is in correct
d) ii is correct

463. Defects discovered by static analysis tools include :
i. Variables that are never used.
ii. Security vulnerabilities.
iii. Programming Standard Violations
iv. Uncalled functions and procedures
a) i , ii,iii,iv is correct
b) iii ,is correct I,ii,iv are incorrect.
c) i ,ii, iii and iv are incorrect
d) iv, ii is correct

464. Test Conditions are derived from :-
a) Specifications
b) Test Cases
c) Test Data
d) Test Design

465 Which of the following is true about White and Black Box Testing Technique:-
a) Equivalance partitioning, Decision Table and Control flow are White box Testing Techniques.
b) Equivalence partitioning , Boundary Value Analysis , Data Flow are Black Box Testing Techniques.
c) Equivalence partitioning , State Transition , Use Case Testing are black box Testing Techniques.
d) Equivalence Partioning , State Transition , Use Case Testing and Decision Table are White Box
Testing Techniques.

466. Regression testing should be performed:
i. every week
ii. after the software has changed
iii. as often as possible
iv. when the environment has changed
v. when the project manager says
a) i & ii are true, iii, iv & v are false
b) ii, iii & iv are true, i & v are false
c) ii & iv are true, i, iii & v are false
d) ii is true, i, iii, iv & v are false

467. Benefits of Independent Testing
a) Independent testers are much more qualified than Developers
b) Independent testers see other and different defects and are unbiased.
c) Independent Testers cannot identify defects.
d) Independent Testers can test better than developers

468. Minimum Tests Required for Statement Coverage and Branch Coverage :-
Read P
Read Q
If p+q > 100 then
Print “Large”
End if
If p > 50 then
Print “pLarge”
End if
a) Statement coverage is 2, Branch Coverage is 2
b) Statement coverage is 3 and branch coverage is 2
c) Statement coverage is 1 and branch coverage is 2
d) Statement Coverage is 4 and Branch coverage is 2

469. Minimum Test Required for Statement Coverage :-
Disc = 0
Order-qty = 0
Read Order-qty
If Order-qty >=20 then
Disc = 0.05
If Order-qty >=100 then
Disc =0.1
End if
End if
a) Statement coverage is 4
b) Statement coverage is 1
c) Statement coverage is 3
d) Statement Coverage is 2

470. The structure of an incident report is covered in the Standard for Software Test Documentation
IEEE 829 and is called as : -
a) Anomaly Report
b) Defect Report
c) Test Defect Report
d) Test Incident Report

471. Which of the following is the task of a Test Lead / Leader.
i. Interaction with the Test Tool Vendor to identify best ways to leverage test tool on the project. ii.
Write Test Summary Reports based on the information gathered during testing
iii. Decide what should be automated , to what degree and how.
iv. Create the Test Specifications
a) i, ii, iii is true and iv is false
b) ii,iii,iv is true and i is false
c) i is true and ii,iii,iv are false
d) iii and iv is correct and i and ii are incorrect

472. Features of White Box Testing Technique :-
i. We use explicit knowledge of the internal workings of the item being tested to select the test data.
ii. Uses specific knowledge of programming code to examine outputs and assumes that the tester
knows the path of logic in a unit or a program.
iii. Checking for the performance of the application
iv. Also checks for functionality.
a) i, ii are true and iii and iv are false
b) iii is true and i,ii, iv are false
c) ii ,iii is true and i,iv is false
d) iii and iv are true and i,ii are false

473. Which of the following is a part of Test Closure Activities?
i. Checking which planned deliverables have been delivered
ii. Defect report analysis.
iii. Finalizing and archiving testware.
iv. Analyzing lessons.
a) i , ii , iv are true and iii is false
b) i , ii , iii are true and iv is false
c) i , iii , iv are true and ii is false
d) All of above are true

474. Which of the following will be the best definition for Testing :-
a) The goal / purpose of testing is to demonstrate that the program works.
b) The purpose of testing is to demonstrate that the program is defect free.
c) The purpose of testing is to demonstrate that the program does what it is supposed to do.
d) Testing is executing Software for the purpose of finding defects.

475. Which of the following is not a type of incremental testing approach?
a) Top down
b) Big-bang
c) Bottom up
d) Functional incrementation.

476. Drivers are also known as:
i. Spade
ii. Test harness
iii. Scaffolding
a) i , ii are true and iii is false
b) i , iii are true and ii is false
c) ii , iii are true and i is false
d) All of the above are true

477. Exit Criteria may consist of :-
i. Thoroughness measures , such as coverage of code, functionality or risk
ii. Estimates of Defect density or reliability measures.
iii. Residual risk such as defects not fixed or lack of test coverage in certain areas
iv. Verifying the Test Environment.
a) iv is correct and i,ii,iii are incorrect.
b) i,ii,iii is correct and iv is incorrect
c) ii is correct and i,ii,iii are incorrect
d) iii and iv are correct and i,ii are incorrect

478. Which of the following helps in monitoring the Test Progress:-
i. Percentage of Test Case Execution
ii. Percentage of work done in test environment preparation.
iii. Defect Information e.g. defect density, defects found and fixed
iv. The size of the testing Team and skills of the engineers
a) iv is correct and i,ii,iii are incorrect
b) i,ii,iii are correct and iv is incorrect
c) i,ii are correct and iii,iv are incorrect
d) i,iv are correct and ii , iii are incorrect

479. The selection of a test approach should consider the context :-
i. Risk of Failure of the Project, hazards to the product and risks of product failure to humans
ii. Skills and experience of the people in the proposed technique, tools and methods
iii. The objective of the testing endeavor and the mission of the testing team.
iv. The size of the testing Team
a) i,ii,iii,iv are true
b) i,ii,iii are true and iv is false.
c) ii,iii,iv are true and i is false.
d) i,iv are true and ii, iii are false.

480. In case of Large Systems :-
a) Only few tests should be run
b) Testing should be on the basis of Risk
c) Only Good Test Cases should be executed.
d) Test Cases written by good test engineers should be executed.

481. The Provision and Management of a controlled library containing all the configurations items is
called as
a) Configuration Control
b) Status Accounting
c) Configuration Identification
d) Configuration Identification

ISTQB Foundation Level Certification Software Testing - 15

431. What is typically the MOST important reason to use risk to drive testing efforts?
A Because testing everything is not feasible.
B Because risk-based testing is the most efficient approach to finding bugs.
C Because risk-based testing is the most effective way to show value.
D Because software is inherently risky.

432. Which of the following defines the scope of maintenance testing?
A The coverage of the current regression pack.
B The size and risk of any change(s) to the system.
C The time since the last change was made to the system.
D Defects found at the last regression test run.

433. Which is the MOST important advantage of independence in testing?
A An independent tester may find defects more quickly than the person who wrote the software. B An
independent tester may be more focused on showing how the software works than the person who wrote
the software.
C An independent tester may be more effective and efficient because they are less familiar with the
software than the person who wrote it.
D An independent tester may be more effective at finding defects missed by the person who wrote the software.

434. For testing, which of the options below best represents the main concerns of Configuration
i. All items of testware are identified and version controlled;
ii. All items of testware are used in the final acceptance test;
iii. All items of testware are stored in a common repository;
iv. All items of testware are tracked for change;
v. All items of testware are assigned to a responsible owner;
vi. All items of testware are related to each other and to development items.
A i, iv, vi.
B ii, iii, v.
C i, iii, iv.
D iv, v, vi.

435. Which of the following would be a valid measure of test progress?
A Number of undetected defects.
B Total number of defects in the product.
C Number of test cases not yet executed.
D Effort required to fix all defects.

436. Which of following statements is true? Select ALL correct options
Regression testing should be performed:
i once a month
ii when a defect has been fixed
iii when the test environment has changed
iv when the software has changed
A ii and iv.
B ii, iii and iv.
C i, ii and iii.
D i and iii.

437. In which of the following orders would the phases of a formal review usually occur?
A Planning, preparation, kick off, meeting, rework, follow up.
B Kick off, planning, preparation, meeting, rework, follow up.
C Preparation, planning, kick off, meeting, rework, follow up.
D Planning, kick off, preparation, meeting, rework, follow up.

438. Which of the following are valid objectives for incident reports?
i. Provide developers and other parties with feedback about the problem to enable identification, isolation
and correction as necessary.
ii. Provide ideas for test process improvement.
iii. Provide a vehicle for assessing tester competence.
iv. Provide testers with a means of tracking the quality of the system under test.
A i, ii, iii.
B i, ii, iv.
C i, iii, iv.
D ii, iii, iv.

439. Consider the following techniques. Which are static and which are dynamic techniques?
i. Equivalence Partitioning.
ii. Use Case Testing.
iii.Data Flow Analysis.
iv.Exploratory Testing.
v. Decision Testing.
vi Inspections.
A i-iv are static, v-vi are dynamic.
B iii and vi are static, i, ii, iv and v are dynamic.
C ii, iii and vi are static, i, iv and v are dynamic.
D vi is static, i-v are dynamic.

440. Why are static testing and dynamic testing described as complementary?
A Because they share the aim of identifying defects and find the same types of defect.
B Because they have different aims and differ in the types of defect they find.
C Because they have different aims but find the same types of defect.
D Because they share the aim of identifying defects but differ in the types of defect they find.

441. Which of the following are disadvantages of capturing tests by recording the actions of a manual
i The script may be unstable when unexpected events occur.
ii Data for a number of similar tests is automatically stored separately from the script.
iii Expected results must be added to the captured script.
iv The captured script documents the exact inputs entered by the tester.
v When replaying a captured test, the tester may need to debug the script if it doesn’t play correctly.
A i, iii, iv, v.
B ii, iv and v.
C i, ii and iv.
D i and v.

442. Which of the following is determined by the level of product risk identified?
A Extent of testing.
B Scope for the use of test automation.
C Size of the test team.
D Requirement for regression testing.

443. Deciding How much testing is enough should take into account :-
i. Level of Risk including Technical and Business product and project risk
ii. Project constraints such as time and budget
iii. Size of Testing Team
iv. Size of the Development Team
a) i,ii,iii are true and iv is false
b) i,,iv are true and ii is false
c) i,ii are true and iii,iv are false
d) ii,iii,iv are true and i is false

444. Test planning has which of the following major tasks?
i. Determining the scope and risks, and identifying the objectives of testing.
ii. Determining the test approach (techniques,test items, coverage, identifying and interfacing the teams
involved in testing , testware)
iii. Reviewing the Test Basis (such as requirements,architecture,design,interface)
iv. Determining the exit criteria.
a) i,ii,iv are true and iii is false
b) i,,iv are true and ii is false
c) i,ii are true and iii,iv are false
d) ii,iii,iv are true and i is false

445. Evaluating testability of the requirements and system are a part of which phase:-
a) Test Analysis and Design
b) Test Planning and control
c) Test Implementation and execution
d) Evaluating exit criteria and reporting

446. One of the fields on a form contains a text box which accepts alphabets in lower or upper case.
Indentify the invalid Equivalance class value.
b. cLASS
c. CLass
d. CLa01ss

447. In a system designed to work out the tax to be paid:
An employee has £4000 of salary tax free. The next £1500 is taxed at 10% The next £28000 is taxed at
22% Any further amount is taxed at 40% Which of these groups of numbers would fall into the same
equivalence class?
a) £4800; £14000; £28000
b) £5200; £5500; £28000
c) £28001; £32000; £35000
d) £5800; £28000; £32000

448. Which of the following has highest level of independence in which test cases are :
a) Designed by persons who write the software under test
b) Designed by a person from a different section
c) Designed by a person from a different organization
d) Designed by another person

449. We use the output of the requirement analysis, the requirement specification as the input for writing
a) User Acceptance Test Cases
b) Integration Level Test Cases
c) Unit Level Test Cases
d) Program specifications

450. Validation involves which of the following
i. Helps to check the Quality of the Built Product
ii. Helps to check that we have built the right product.
iii. Helps in developing the product
iv. Monitoring tool wastage and obsoleteness.
a) Options i,ii,iii,iv are true.
b) ii is true and i,iii,iv are false
c) i,ii,iii are true and iv is false
d) iii is true and i,ii,iv are false.

451. Which of the following uses Impact Analysis most?
a) Component testing
b) Non-functional system testing
c) User acceptance testing
d) Maintenance testing

452. Repeated Testing of an already tested program, after modification, to discover any defects
introduced or uncovered as a result of the changes in the software being tested or in another related or
unrelated software component:
a) Re Testing .
b) Confirmation Testing
c) Regression Testing
d) Negative Testing

453. Impact Analysis helps to decide :-
a) How much regression testing should be done.
b) Exit Criteria
c) How many more test cases need to written.
d) Different Tools to perform Regression Testing

454. Functional system testing is:
a) testing that the system functions with other systems
b) testing that the components that comprise the system function together
c) testing the end to end functionality of the system as a whole
d) testing the system performs functions within specified response times

455. Consider the below state transition diagram of a switch. Which of the following represents an invalid
state transition?
a) OFF to ON
b) ON to OFF
c) FAULT to ON

456. Peer Reviews are also called as :-
a) Inspection
b) Walkthrough
c) Technical Review
d) Formal Review

457. Consider the following statements:
i. 100% statement coverage guarantees 100% branch coverage.
ii. 100% branch coverage guarantees 100% statement coverage.
iii. 100% branch coverage guarantees 100% decision coverage.
iv. 100% decision coverage guarantees 100% branch coverage.
v. 100% statement coverage guarantees 100% decision coverage.
a) ii is True; i, iii, iv & v are False
b) i & v are True; ii, iii & iv are False
c) ii & iii are True; i, iv & v are False
d) ii, iii & iv are True; i & v are False

458. The Kick Off phase of a formal review includes the following :-
a) Explaining the objective
b) Fixing defects found typically done by author
c) Follow up
d) Individual Meeting preparations

459. Match every stage of the software Development Life cycle with the Testing Life cycle:
i. Hi-level design a Unit tests
ii. Code b Acceptance tests
iii. Low-level design c System tests
iv. Business requirements d Integration tests
a) i-d , ii-a , iii-c , iv-b
b) i-c , ii-d , iii-a , iv-b
c) i-b , ii-a , iii-d , iv-c
d) i-c , ii-a , iii-d , iv-b

460. Which of the following is not phase of the Fundamental Test Process?
a) Test Planning and Control
b) Test implementation and Execution
c) Requirement Analysis
d) Evaluating Exit criteria and reporting