1) What is the difference between the QA and software testing?
The role of QA (Quality Assurance) is to monitor the quality of the "process" used to produce the software. While the software testing, is the process of ensuring the functionality of final product meets the user's requirement.
2) What is Testware?
Testware is test artifacts like test cases, test data, test plans needed to design and execute a test.
3) What is the difference between build and release?
Build: It is a number given to Installable software that is given to the testing team by the development team.
Release: It is a number given to Installable software that is handed over to the customer by the tester or developer.
4) What are the automation challenges that SQA(Software Quality Assurance) team faces while testing?
- Mastering the automation tool
- Reusability of Automation script
- Adaptability of test case for automation
- Automating complex test cases.
5) What is bug leakage and bug release?
Bug release is when software or an application is handed over to the testing team knowing that the defect is present in a release. During this the priority and severity of bug is low, as bug can be removed before the final handover.
Bug leakage is something, when the bug is discovered by the end users or customer, and not detected by the testing team while testing the software.
6) What is data driven testing?
Data driven testing is an automation testing framework, which tests the different input values on the AUT. These values are read directly from the data files. The data files may include csv files, excel files, data pools and many more.
7) Explain the steps for Bug Cycle?
- Once the bug is identified by the tester, it is assigned to the development manager in open status
- If the bug is a valid defect the development team will fix it.
- If it is not a valid defect, the defect will be ignored and marked as rejected
- The next step will be to check whether it is in scope. If the bug is not the part of the current release then the defects are postponed
- If the defect or bug is raised earlier then the tester will assign a DUPLICATE status
- When bug is assigned to developer to fix, it will be given a IN-PROGRESS status
- Once the defect is repaired, the status will change to FIXED at the end the tester will give CLOSED status if it passes the final test.
8) What does the test strategy include?
The test strategy includes an introduction, resource, scope and schedule for test activities, test tools, test priorities, test planning and the types of test that has to be performed.
9) Mention the different types of software testing?
- Unit testing
- Integration testing and regression testing
- Shakeout testing
- Smoke testing
- Functional testing
- Performance testing
- White box and Black box testing
- Alpha and Beta testing
- Load testing and stress testing
- System testing
10) What is branch testing and what is boundary testing?
The testing of all the branches of the code, which is tested once, is known as branch testing. While the testing, which is focused on the limit conditions of the software is known as boundary testing.
11) What are the contents of test plans and test cases?
- Testing objectives
- Testing scope
- Testing the frame
- The environment
- Reason for testing
- The criteria for entrance and exit
- Risk factors
12) What is Agile testing and what is the importance of Agile testing?
Agile testing is software testing, is testing using Agile Methodology. The importance of this testing is that, unlike normal testing process, this testing does not wait for the development team to complete the coding first and then doing testing. The coding and testing both goes simultaneously. It requires continuous customer interaction.
13) What is Test case?
Test case is a specific condition to check against the Application Under Test. It has information of test steps, prerequisites, test environment, and outputs.
14) What is the strategy for Automation Test Plan?
- The strategy for Automation Test Plan
- Preparation of Automation Test Plan
- Recording the scenario
- Error handler incorporation
- Script enhancement by inserting check points and looping constructs
- Debugging the script and fixing the issues
- Rerunning the script
- Reporting the result
15) What is quality audit?
The systematic and independent examination for determining the effectiveness of quality control procedures is known as the quality audit.
16) What are the tools used by a tester while testing?
- YSlow for FireBug
- Web Developer toolbar for firebox
Above are just sample tools. The tools a Tester may vary with his/her project.
17) Explain stress testing, load testing and volume testing?
- Load Testing: Testing an application under heavy but expected load is known as Load Testing. Here, the load refers to the large volume of users, messages, requests, data, etc.
- Stress Testing: When the load placed on the system is raised or accelerated beyond the normal range then it is known as Stress Testing.
- Volume Testing: The process of checking the system, whether the system can handle the required amounts of data, user requests, etc. is known as Volume Testing.
18) What are the five common solutions for software developments problems?
- Setting up the requirements criteria, the requirements of a software should be complete, clear and agreed by all
- The next thing is the realistic schedule like time for planning , designing, testing, fixing bugs and re-testing
- Adequate testing, start the testing immediately after one or more modules development.
- Use rapid prototype during design phase so that it can be easy for customers to find what to expect
- Use of group communication tools
19) What is a 'USE' case and what does it include?
The document that describes, the user action and system response, for a particular functionality is known as USE case. It includes revision history, table of contents, flow of events, cover page, special requirements, pre-conditions and post-conditions.
20) What is CRUD testing and how to test CRUD?
CRUD stands for Create, Read, Update and Delete. CRUD testing can be done using SQL statements.
21) What is thread testing?
A thread testing is a top-down testing, where the progressive integration of components follows the implementation of subsets of the requirements, as opposed to the integration of components by successively lower levels.
22) What is configuration management?
It is a process to control and document any changes made during the life of a project. Release control, Change control and Revision control are the important aspects of configuration management.
23) What is Ad Hoc testing?
It is a testing phase where the tester tries to break the system by randomly trying the system's functionality. It can include negative testing as well.
24) List out the roles of Software Quality Assurance engineer?
A software quality assurance engineer tasks may include following things amongst others
- Writing source code
- Software design
- Control of source code
- Reviewing code
- Change management
- Configuration management
- Integration of software
- Program testing
- Release management process
25) Explain what are test driver and test stub and why it is required?
- The stub is called from the software component to be tested. It is used in top down approach
- The driver calls a component to be tested. It is used in bottom up approach
- It is required when we need to test the interface between modules X and Y and we have developed only module X. So we cannot just test module X but if there is any dummy module we can use that dummy module to test module X
26) Explain what is Bug triage?
A bug triage is a process to
- Ensure bug report completeness
- Assign and analyze the bug
- Assigning bug to proper bug owner
- Adjust bug severity properly
- Set appropriate bug priority
27) List out various tools required to support testing during development of the application?
To support testing during development of application following tools can be used
- Test Management Tools: JIRA, Quality Center etc.
- Defect Management Tools: Test Director, Bugzilla
- Project Management Tools: Sharepoint
- Automation Tools: RFT, QTP, and WinRunner
28) Explain what is a cause effect graph?
A cause effect graph is a graphical representation of inputs and the associated outputs effects that can be used to design test cases.
29) Explain what is Test Metric is software testing and what information does it contains?
In software testing, Test Metric is referred to the standard of test measurement. They are the statistics narrating the structure or content of a testing. It contains information like
- Total test
- Test run
- Test passed
- Test failed
- Tests deferred
- Test passed the first time
30) Explain what is traceability matrix?
A test matrix is used to map test scripts to requirements.
31) Explain what is the difference between Regression testing and Retesting?
Retesting is carried out to check the defects fixes, while regression testing is performed to check whether the defect fix have any impact on other functionality.
32) List out the software quality practices through the software development cycle?
Software quality practices includes
- Review the requirements before starting the development phase
- Code Review
- Write comprehensive test cases
- Session based testing
- Risk based testing
- Prioritize bug based on usage
- Form a dedicated security and performance testing team
- Run a regression cycle
- Perform sanity tests on production
- Simulate customer accounts on production
- Include software QA Test Reports
33) Explain what is the rule of a "Test Driven Development"?
The rule of a Test Driven Development is to prepare test cases before writing the actual code. Which means you are actually be writing code for the tests before you write code for the application.
34) Mention what are the types of documents in SQA?
The types of documents in SQA are
- Requirement Document
- Test Metrics
- Test cases and Test plan
- Task distribution flow chart
- Transaction Mix
- User profiles
- Test log
- User profiles
- Test incident report
- Test summary report
35) Explain what should your QA documents should include?
QA testing document should include
- List the number of defects detected as per severity level
- Explain each requirement or business function in detail
- Inspection reports
- Test plans and test cases
- Bug reports
- User manuals
- Prepare separate reports for managers and users
36) Explain what is MR and what information does MR consists of?
MR stands for Modification Request also referred as Defect report. It is written for reporting errors/problems/suggestions in the software.
37) What does the software QA document should include?
Software QA document should include
- Business rules
- Code changes
- Test plans
- Test cases
- Bug reports
- User manuals, etc
38) Mention how validation activities should be conducted?
Validation activities should be conducted by following techniques
- Hire third party independent verification and validation
- Assign internal staff members that are not involved in validation and verification activities
- Independent evaluation