Search This Blog

Tuesday 19 April 2016

Testing Interview Question-Experienced

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 to produce a quality of a product. While the software testing, is the process of ensuring the final product and check the functionality of final product and to see whether the final product meets the user’s requirement.
2) What is Testware?
Testware is the subset of software, which helps in performing the testing of application.  It is a term given to the combination of software application and utilities which is required for testing a software package.
3) What is the difference between build and release?
Build: It is a number given to Installable software that is given to testing team by the development team.
Release: It is a number given to Installable software that is handed over to customer by the tester or developer.
4) What are the automation challenges that QA team faces while testing?
  • Exploitation of automation tool
  • Frequency of use of test case
  • Reusability of Automation script
  • Adaptability of test case for automation
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 missed by the testing team to detect, while testing the software.
QA Interview Questions
6) What is data driven testing?
Data driven testing is an automation testing part, which tests the output or input values. These values are read directly from the data files. The data files may include csv files, excel files, data pools and many more. It is performed when the values are changing by the time.
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 and 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 it is happen so that, 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 assigned 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 changed 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 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 application, 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 in test plans and test cases?
  • Testing objectives
  • Testing scope
  • Testing the frame
  • The environment
  • Reason for testing
  • The criteria for entrance and exit
  • Deliverables
  • Risk factors
12) What is Agile testing and what is the importance of Agile testing?
 Agile testing is software testing, which involves the testing of the software from the customer point of view.  The importance of this testing is that, unlike normal testing process, this testing does not wait for development team to complete the coding first and then doing testing. The coding and testing both goes simultaneously.  It requires continuous customer interaction.
It works on SDLC ( Systems Development Life Cycle) methodologies, it means that the task is divided into different segments and compiled at the end of the task.
13) What is Test case?
Test case is a specific term that is used to test a specific element.  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 quality of activities is known as quality audit.  It allows the cross check for the planned arrangements, whether they are properly implemented or not.
16) How does a server or client environment affect software testing?
As the dependencies on the clients are more, the client or server applications are complex.
The testing needs are extensive as servers, communications and hardware are interdependent. Integration and system testing is also for a limited period of time.
17) What are the tools used by a tester while testing?
  • Selenium
  • Firebug
  • OpenSTA
  • WinSCP
  • YSlow for FireBug
  • Web Developer toolbar for firebox
18) 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.
19) 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
20) 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.
21) What is CRUD testing and how to test CRUD?

CRUD testing is another name for Black Box testing.  CRUD stands for Create, Read, Update and Delete.
22) What is validation and verification in software testing?
In verification, all the key aspects of software developments are taken in concern like code, specifications, requirements and document plans.  Verification is done on the basis of four things list of issues, checklist, walkthroughs and inspection meetings. Following verification, validation is done, it involves actual testing, and all the verification aspects are checked thoroughly in validation.
23) 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.
24) 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.
25) 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.
26) List out the roles of software Quality Assurance engineer?
A software quality assurance engineer tasks include following things
  • Writing source code
  • Software design
  • Control of source code
  • Reviewing code
  • Change management
  • Configuration management
  • Integration of software
  • Program testing
  • Release management process
27) 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
  • Now module B cannot receive or send data from module A directly, so in these case we have to transmit data from one module to another module by some external features. This external feature is referred as Driver
28) 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
29) 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
30) 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.
31) Explain what is Test Metric is software testing and what information does it contains?
In software testing, Test Metric is referred to standard of test measurement. They are the statistics narrating the structure or content of a program.  It contains information like
  • Total test
  • Test run
  • Test passed
  • Test failed
  • Tests deferred
  • Test passed the first time
32) Explain what is traceability matrix?
A test matrix is used to verify the test scripts per specified requirements of test cases.
33) 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.
34) 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
35) 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.
36) Mention what are the types of documents in QA?
The types of documents in QA 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
37) 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
  • Configurations
  • Test plans and test cases
  • Bug reports
  • User manuals
  • Prepare separate reports for managers and users
38) 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.
39) What does the software QA document should include?
Software QA document should include
40) 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

Question: What is Exploratory Testing and when should it be performed?

Answer: The definition of Exploratory Testing is “simultaneous test design and execution” against an application. This means that the tester uses her domain knowledge and testing experience to predict where and under what conditions the system might behave unexpectedly. As the tester starts exploring the system, new test design ideas are thought of on the fly and executed against the software under test.
On an exploratory testing session, the tester executes a chain of actions against the system, each action depends on the result of the previous action, hence the outcome of the result of the actions could influence what the tester does next, therefore the test sessions are not identical.
This is in contrast to Scripted Testing where tests are designed beforehand using the requirements or design documents, usually before the system is ready and execute those exact same steps against the system in another time.
Exploratory Testing is usually performed as the product is evolving (agile) or as a final check before the software is released. It is a complimentary activity to automated regression testing.

Question: What Test Techniques are there and what is their purpose?

Answer: Test Techniques are primarily used for two purposes: a) To help identify defects, b) To reduce the number of test cases.
  • Equivalence partitioning is mainly used to reduce number of test cases by identifying different sets of data that are not the same and only executing one test from each set of data
  • State Transition Testing is used to validate allowed and disallowed states and transitions from one state to another by various input data
  • Pair-wise or All Pairs Testing is a very powerful test technique and is mainly used to reduce the number of test cases while increasing the coverage of feature combinations.

Question: How do you test the login feature of a web application?

This is a very common software testing interview question and the aim is to see how broad you can think about the feature. Most interviewees start with the obvious answer of checking input fields with positive and negative values, invalid email, valid email but incorrect password, sql injection, etc. But most of these tests can be done and should be done by the developers as part of integration testing.
Here the focus is on testing at system level, tests which cannot be done without a full integrated system.
Answer: Possible answers to this testing interview question can be:
  • Sign in with valid login, Close browser and reopen and see whether you are still logged in or not.
  • Session management is important – how do we keep track of logged in users, is it via cookies or web sessions?
  • Sign in, then logout and then go back to the login page to see if you are truly logged out.
  • Login, then go back to the same page, do you see the login screen again?
  • Sign in from one browser, then open another browser to see if you need to sign in again?
  • Login, change password, and then logout, then see if you can login again with the old password.

Question: What Types of Testing is Specifically Important for Web Testing?

This is also an important Software Testing interview question for web application testing roles. Note, this question is asking about the types of testing.
Although you would do functional testing, usability testing, accessibility testing, etc, these are all also applicable to desktop application testing. The question is asking specifically for web testing.
Answer: Two types of testing which are very important for testing web applications arePerformance Testing and Security Testing. The difference between a web application and desktop application, is that web applications are open to the world, with potentially many users accessing the application simultaneously at various times, so load testing and stress testing are important.
Web applications are also vulnerable to all forms of attacks, mostly DDOS, so security testing is also very important to consider when testing web applications.

Question: How do You Verify the Results of Your Search on Search Results Page?

This is another common Software Testing Interview Question for e-commerce testing roles. This question refers to verifying the results are what we expect to see.
Suppose you search for a product on Amazon.com website. On the search results page you will see a list of items related to your search. How can you verify that the results that you see are really the ones that you are supposed to see?
Answer: The answer to this question is rather simple. At first instance, we need to know where the data is coming from. Are they coming from a database? Or some XML files from 3rd party websites?
Once we have this information, we can start comparing the results we see on the result page with the results from the source, e.g. database.
Another option is to use mocks to generate the data that we need so we can fully control the data that we see on the search results page.
If you are preparing for a Software Testing Interview, or you are interviewing candidates for QA roles, you will find this mind map very useful: 30+ Essential Software Testing Questions to Prepare for Interview

What is Acceptance Testing?
Testing conducted to enable a user/customer to determine whether to accept a software product. Normally performed to validate the software meets a set of agreed acceptance criteria.
What is Accessibility Testing?
Verifying a product is accessible to the people having disabilities (deaf, blind, mentally disabled etc.).
What is Adhoc Testing?
A testing phase where the tester tries to ‘break’ the system by randomly trying the system’s functionality. Can include negative testing as well. See also Monkey Testing.
What is Agile Testing?
Testing practice for projects using agile methodologies, treating development as the customer of testing and emphasizing a test-first design paradigm. See also Test Driven Development.
What is Application Programming Interface (API)?
A formalized set of software calls and routines that can be referenced by an application program in order to access supporting system or network services.
What is Automated Testing?
Testing employing software tools which execute tests without manual intervention. Can be applied in GUI, performance, API, etc. testing. The use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions.
What is Beta Testing?
Testing of a release of a software product conducted by customers.
What is Black Box Testing?
Testing based on an analysis of the specification of a piece of software without reference to its internal workings. The goal is to test how well the component conforms to the published requirements for the component.
What is Bottom Up Testing?
An approach to integration testing where the lowest level components are tested first, then used to facilitate the testing of higher level components. The process is repeated until the component at the top of the hierarchy is tested.
—————————————————————————————————————————————————-
1. What is the MAIN benefit of designing tests early in the life cycle?
It helps prevent defects from being introduced into the code.
2. What is risk-based testing?
Risk-based testing is the term used for an approach to creating a test strategy that is based on prioritizing tests by risk. The basis of the approach is a detailed risk analysis and prioritizing of risks by risk level. Tests to address each risk are then specified, starting with the highest risk first.
3. A wholesaler sells printer cartridges. The minimum order quantity is 5. There is a 20% discount for orders of 100 or more printer cartridges. You have been asked to prepare test cases using various values for the number of printer cartridges ordered. Which of the following groups contain three test inputs that would be generated using Boundary Value Analysis?
4, 5, 99
4. What is the KEY difference between preventative and reactive approaches to testing?
Preventative tests are designed early; reactive tests are designed after the software has been produced.
5. What is the purpose of exit criteria?
The purpose of exit criteria is to define when a test level is completed.
6. What determines the level of risk?
The likelihood of an adverse event and the impact of the event determine the level of risk.
7. When is used Decision table testing?
Decision table testing is used for testing systems for which the specification takes the form of rules or cause-effect combinations. In a decision table the inputs are listed in a column, with the outputs in the same column but below the inputs. The remainder of the table explores combinations of inputs to define the outputs produced.
Learn More About Decision Table Testing Technique in the Video Tutorial here
8. What is the MAIN objective when reviewing a software deliverable?
To identify defects in any software work product.
9. Which of the following defines the expected results of a test? Test case specification or test design specification.
Test case specification defines the expected results of a test.
10. What is the benefit of test independence?
It avoids author bias in defining effective tests.
11. As part of which test process do you determine the exit criteria?
The exit criteria is determined on the bases of ‘Test Planning’.
12. What is beta testing?
Testing performed by potential customers at their own locations.
13. Given the following fragment of code, how many tests are required for 100% decision coverage?
if width > length
   thenbiggest_dimension = width
     if height > width
             thenbiggest_dimension = height
     end_if
elsebiggest_dimension = length  
            if height > length 
                thenbiggest_dimension = height
          end_if
end_if
4
14. You have designed test cases to provide 100% statement and 100% decision coverage for the following fragment of code. if width > length then biggest_dimension = width else biggest_dimension = length end_if The following has been added to the bottom of the code fragment above. print “Biggest dimension is ” &biggest_dimensionprint “Width: ” & width print “Length: ” & length How many more test cases are required?
None, existing test cases can be used.
15. Rapid Application Development?
Rapid Application Development (RAD) is formally a parallel development of functions and subsequent integration. Components/functions are developed in parallel as if they were mini projects, the developments are time-boxed, delivered, and then assembled into a working prototype. This can very quickly give the customer something to see and use and to provide feedback regarding the delivery and their requirements. Rapid change and development of the product is possible using this methodology. However the product specification will need to be developed for the product at some point, and the project will need to be placed under more formal controls prior to going into production.
16. What is the difference between Testing Techniques and Testing Tools?
Testing technique: – Is a process for ensuring that some aspects of the application system or unit functions properly there may be few techniques but many tools.
Testing Tools: – Is a vehicle for performing a test process. The tool is a resource to the tester, but itself is insufficient to conduct testing
Learn More About Testing Tools  here
17. We use the output of the requirement analysis, the requirement specification as the input for writing …
User Acceptance Test Cases
18. 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:
Regression Testing
19. What is component testing?
Component testing, also known as unit, module and program testing, searches for defects in, and verifies the functioning of software (e.g. modules, programs, objects, classes, etc.) that are separately testable. Component testing may be done in isolation from the rest of the system depending on the context of the development life cycle and the system. Most often stubs and drivers are used to replace the missing software and simulate the interface between the software components in a simple manner. A stub is called from the software component to be tested; a driver calls a component to be tested.
Here is an awesome video on Unit Testing
20. What is functional system testing?
Testing the end to end functionality of the system as a whole is defined as a functional system testing.
21. What are the benefits of Independent Testing?
Independent testers are unbiased and identify different defects at the same time.
22. In a REACTIVE approach to testing when would you expect the bulk of the test design work to be begun?
The bulk of the test design work begun after the software or system has been produced.
23. What are the different Methodologies in Agile Development Model?
There are currently seven different agile methodologies that I am aware of:
  1. Extreme Programming (XP)
  2. Scrum
  3. Lean Software Development
  4. Feature-Driven Development
  5. Agile Unified Process
  6. Crystal
  7. Dynamic Systems Development Model (DSDM)
24. Which activity in the fundamental test process includes evaluation of the testability of the requirements and system?
A ‘Test Analysis’ and ‘Design’ includes evaluation of the testability of the requirements and system.
25. What is typically the MOST important reason to use risk to drive testing efforts?
Because testing everything is not feasible.
26. What is random/monkey testing? When it is used?
Random testing often known as monkey testing. In such type of testing data is generated randomly often using a tool or automated mechanism. With this randomly generated input the system is tested and results are analysed accordingly. These testing are less reliable; hence it is normally used by the beginners and to see whether the system will hold up under adverse effects.
27. Which of the following are valid objectives for incident reports?
  1. Provide developers and other parties with feedback about the problem to enable identification, isolation and correction as necessary.
  2. Provide ideas for test process improvement.
  3. Provide a vehicle for assessing tester competence.
  4. Provide testers with a means of tracking the quality of the system under test.
28. Consider the following techniques. Which are static and which are dynamic techniques?
  1. Equivalence Partitioning.
  2. Use Case Testing.
  3. Data Flow Analysis.
  4. Exploratory Testing.
  5. Decision Testing.
  6. Inspections.
Data Flow Analysis and Inspections are static; Equivalence Partitioning, Use Case Testing, Exploratory Testing and Decision Testing are dynamic.
29. Why are static testing and dynamic testing described as complementary?
Because they share the aim of identifying defects but differ in the types of defect they find.
30. What are the phases of a formal review?
In contrast to informal reviews, formal reviews follow a formal process. A typical formal review process consists of six main steps:
  1. Planning
  2. Kick-off
  3. Preparation
  4. Review meeting
  5. Rework
  6. Follow-up.
31. What is the role of moderator in review process?
The moderator (or review leader) leads the review process. He or she determines, in co-operation with the author, the type of review, approach and the composition of the review team. The moderator performs the entry check and the follow-up on the rework, in order to control the quality of the input and output of the review process. The moderator also schedules the meeting, disseminates documents before the meeting, coaches other team members, paces the meeting, leads possible discussions and stores the data that is collected.
Learn More about Review process in Video Tutorial here
32. What is an equivalence partition (also known as an equivalence class)?
An input or output ranges of values such that only one value in the range becomes a test case.
33. When should configuration management procedures be implemented?
During test planning.
34. A Type of functional Testing, which investigates the functions relating to detection of threats, such as virus from malicious outsiders?
Security Testing
35. Testing where in we subject the target of the test , to varying workloads to measure and evaluate the performance behaviours and ability of the target and of the test to continue to function properly under these different workloads?
Load Testing
36. Testing activity which is performed to expose defects in the interfaces and in the interaction between integrated components is?
Integration Level Testing
37. What are the Structure-based (white-box) testing techniques?
Structure-based testing techniques (which are also dynamic rather than static) use the internal structure of the software to derive test cases. They are commonly called ‘white-box’ or ‘glass-box’ techniques (implying you can see into the system) since they require knowledge of how the software is implemented, that is, how it works. For example, a structural technique may be concerned with exercising loops in the software. Different test cases may be derived to exercise the loop once, twice, and many times. This may be done regardless of the functionality of the software.
38. When “Regression Testing” should be performed?
After the software has changed or when the environment has changed Regression testing should be performed.
39What is negative and positive testing?
A negative test is when you put in an invalid input and receives errors. While a positive testing, is when you put in a valid input and expect some action to be completed in accordance with the specification.
40. What is the purpose of a test completion criterion?
The purpose of test completion criterion is to determine when to stop testing
41. What can static analysis NOT find?
For example memory leaks.
42. What is the difference between re-testing and regression testing?
Re-testing ensures the original fault has been removed; regression testing looks for unexpected side effects.
43. What are the Experience-based testing techniques?
In experience-based techniques, people’s knowledge, skills and background are a prime contributor to the test conditions and test cases. The experience of both technical and business people is important, as they bring different perspectives to the test analysis and design process. Due to previous experience with similar systems, they may have insights into what could go wrong, which is very useful for testing.
44. What type of review requires formal entry and exit criteria, including metrics?
Inspection
45. Could reviews or inspections be considered part of testing?
Yes, because both help detect faults and improve quality.
46. An input field takes the year of birth between 1900 and 2004 what are the boundary values for testing this field?
1899,1900,2004,2005
47. Which of the following tools would be involved in the automation of regression test? a. Data tester b. Boundary tester c. Capture/Playback d. Output comparator.
d. Output comparator
48. To test a function, what has to write a programmer, which calls the function to be tested and passes it test data.
Driver
49. What is the one Key reason why developers have difficulty testing their own work?
Lack of Objectivity
50.”How much testing is enough?”
The answer depends on the risk for your industry, contract and special requirements.
51. When should testing be stopped?
It depends on the risks for the system being tested. There are some criteria bases on which you can stop testing.
  1. Deadlines (Testing, Release)
  2. Test budget has been depleted
  3. Bug rate fall below certain level
  4. Test cases completed with certain percentage passed
  5. Alpha or beta periods for testing ends
  6. Coverage of code, functionality or requirements are met to a specified point
52. Which of the following is the main purpose of the integration strategy for integration testing in the small?
The main purpose of the integration strategy is to specify which modules to combine when and how many at once.
53.What are semi-random test cases?
Semi-random test cases are nothing but when we perform random test cases and do equivalence partitioning to those test cases, it removes redundant test cases, thus giving us semi-random test cases.
54. Given the following code, which statement is true about the minimum number of test cases required for full statement and branch coverage?
Read p
     Read q
     IF p+q> 100
          THEN Print “Large”

    ENDIF
    IF p > 50
          THEN Print “p Large”
ENDIF
1 test for statement coverage, 2 for branch coverage
55.  What is black box testing? What are the different black box testing techniques?
Black box testing is the software testing method which is used to test the software without knowing the internal structure of code or program. This testing is usually done to check the functionality of an application. The different black box testing techniques are
  1. Equivalence Partitioning
  2. Boundary value analysis
  3. Cause effect graphing
56. Which review is normally used to evaluate a product to determine its suitability for intended use and to identify discrepancies?
Technical Review.
57. Why we use decision tables?
The techniques of equivalence partitioning and boundary value analysis are often applied to specific situations or inputs. However, if different combinations of inputs result in different actions being taken, this can be more difficult to show using equivalence partitioning and boundary value analysis, which tend to be more focused on the user interface. The other two specification-based techniques, decision tables and state transition testing are more focused on business logic or business rules. A decision table is a good way to deal with combinations of things (e.g. inputs). This technique is sometimes also referred to as a ’cause-effect’ table. The reason for this is that there is an associated logic diagramming technique called ’cause-effect graphing’ which was sometimes used to help derive the decision table
58. Faults found should be originally documented by whom?
By testers.
59. Which is the current formal world-wide recognized documentation standard?
There isn’t one.
60. Which of the following is the review participant who has created the item to be reviewed?
Author
61. A number of critical bugs are fixed in software. All the bugs are in one module, related to reports. The test manager decides to do regression testing only on the reports module.
Regression testing should be done on other modules as well because fixing one module may affect other modules.
62. Why does the boundary value analysis provide good test cases?
Because errors are frequently made during programming of the different cases near the ‘edges’ of the range of values.
63. What makes an inspection different from other review types?
It is led by a trained leader, uses formal entry and exit criteria and checklists.
64. Why can be tester dependent on configuration management?
Because configuration management assures that we know the exact version of the testware and the test object.
65. What is a V-Model?
A software development model that illustrates how testing activities integrate with software development phases
66. What is maintenance testing?
Triggered by modifications, migration or retirement of existing software
67. What is test coverage?
Test coverage measures in some specific way the amount of testing performed by a set of tests (derived in some other way, e.g. using specification-based techniques). Wherever we can count things and can tell whether or not each of those things has been tested by some test, then we can measure coverage.
68. Why is incremental integration preferred over “big bang” integration?
Because incremental integration has better early defects screening and isolation ability
69. When do we prepare RTM (Requirement traceability matrix), is it before test case designing or after test case designing?
It would be before test case designing. Requirements should already be traceable from Review activities since you should have traceability in the Test Plan already. This question also would depend on the organisation. If the organisations do test after development started then requirements must be already traceable to their source. To make life simpler use a tool to manage requirements.
70. What is called the process starting with the terminal modules?
Bottom-up integration
71. During which test activity could faults be found most cost effectively?
During test planning
72. The purpose of requirement phase is
To freeze requirements, to understand user needs, to define the scope of testing
73. Why we split testing into distinct stages?
We split testing into distinct stages because of following reasons,
  1. Each test stage has a different purpose
  2. It is easier to manage testing in stages
  3. We can run different test into different environments
  4. Performance and quality of the testing is improved using phased testing
74. What is DRE?
To measure test effectiveness a powerful metric is used to measure test effectiveness known as DRE (Defect Removal Efficiency) From this metric we would know how many bugs we have found from the set of test cases. Formula for calculating DRE is
DRE=Number of bugs while testing  / number of bugs while testing + number of bugs found by user
75. Which of the following is likely to benefit most from the use of test tools providing test capture and replay facilities? a) Regression testing b) Integration testing c) System testing d) User acceptance testing
Regression testing
76. How would you estimate the amount of re-testing likely to be required?
Metrics from previous similar projects and discussions with the development team
77. What studies data flow analysis?
The use of data on paths through the code.
78. What is Alpha testing?
Pre-release testing by end user representatives at the developer’s site.
79. What is a failure?
Failure is a departure from specified behaviour.
80. What are Test comparators?
Is it really a test if you put some inputs into some software, but never look to see whether the software produces the correct result? The essence of testing is to check whether the software produces the correct result, and to do that, we must compare what the software produces to what it should produce. A test comparator helps to automate aspects of that comparison.
81. Who is responsible for document all the issues, problems and open point that were identified during the review meeting
Scribe
82. What is the main purpose of Informal review
Inexpensive way to get some benefit
83. What is the purpose of test design technique?
Identifying test conditions and Identifying test cases
84. When testing a grade calculation system, a tester determines that all scores from 90 to 100 will yield a grade of A, but scores below 90 will not. This analysis is known as:
Equivalence partitioning
85. A test manager wants to use the resources available for the automated testing of a web application. The best choice is Tester, test automater, web specialist, DBA
86. During the testing of a module tester ‘X’ finds a bug and assigned it to developer. But developer rejects the same, saying that it’s not a bug. What ‘X’ should do?
Send to the detailed information of the bug encountered and check the reproducibility
87. A type of integration testing in which software elements, hardware elements, or both are combined all at once into a component or an overall system, rather than in stages.
Big-Bang Testing
88. In practice, which Life Cycle model may have more, fewer or different levels of development and testing, depending on the project and the software product. For example, there may be component integration testing after component testing, and system integration testing after system testing.
V-Model
89. Which technique can be used to achieve input and output coverage? It can be applied to human input, input via interfaces to a system, or interface parameters in integration testing.
Equivalence partitioning
90. “This life cycle model is basically driven by schedule and budget risks” This statement is best suited for…
V-Model
91. In which order should tests be run?
The most important one must tests first
92. The later in the development life cycle a fault is discovered, the more expensive it is to fix. Why?
The fault has been built into more documentation, code, tests, etc
93. What is Coverage measurement?
It is a partial measure of test thoroughness.
94. What is Boundary value testing?
Test boundary conditions on, below and above the edges of input and output equivalence classes. For instance, let say a bank application where you can withdraw maximum Rs.20,000 and a minimum of Rs.100, so in boundary value testing we test only the exact boundaries, rather than hitting in the middle.  That means we test above the maximum limit and below the minimum limit.
95. What is Fault Masking?
Error condition hiding another error condition.
96. What does COTS represent?
Commercial off The Shelf.
97.The purpose of wich is allow specific tests to be carried out on a system or network that resembles as closely as possible the environment where the item under test will be used upon release?
Test Environment
98. What can be thought of as being based on the project plan, but with greater amounts of detail?
Phase Test Plan
99. What is exploratory testing?
Exploratory testing is a hands-on approach in which testers are involved in minimum planning and maximum test execution. The planning involves the creation of a test charter, a short declaration of the scope of a short (1 to 2 hour) time-boxed test effort, the objectives and possible approaches to be used. The test design and test execution activities are performed in parallel typically without formally documenting the test conditions, test cases or test scripts. This does not mean that other, more formal testing techniques will not be used. For example, the tester may decide to use boundary value analysis but will think through and test the most important boundary values without necessarily writing them down. Some notes will be written during the exploratory-testing session, so that a report can be produced afterwards.
100. What is “use case testing”?
In order to identify and execute the functional requirement of an application from start to finish “use case” is used and the techniques used to do this is known as “Use Case Testing”
Bonus!
101. What is the difference between STLC (  Software Testing Life Cycle) and SDLC ( Software Development Life  Cycle) ?
The complete Verification and Validation of software is done in SDLC, while STLC only does Validation of the system. SDLC is a part of STLC.
102. What is traceability matrix?
The relationship between test cases and requirements is shown with the help of a document. This document is known as traceability matrix.
103. What is Equivalence partitioning testing?
Equivalence partitioning testing is a software testing technique which divides the application input test data into each partition at least once of equivalent data from which test cases can be derived.  By this testing method it reduces the time required for software testing.
104. What is white box testing and list the types of white box testing?
White box testing technique involves selection of test cases based on an analysis of the internal structure (Code coverage, branches coverage, paths coverage, condition coverage etc.)  of a component or system. It is also known as Code-Based testing or Structural testing.  Different types of white box testing are
  1. Statement Coverage
  2. Decision Coverage
105.  In white box testing what do you verify?
In white box testing following steps are verified.
  1. Verify the security holes in the code
  2. Verify the incomplete or broken paths in the code
  3. Verify the flow of structure according to the document specification
  4. Verify the expected outputs
  5. Verify all conditional loops in the code to check the complete functionality of the application
  6. Verify the line by line coding and cover 100% testing
106. What is the difference between static and dynamic testing?
Static testing: During Static testing method, the code is not executed and it is performed using the software documentation.
Dynamic testing:  To perform this testing the code is required to be in an executable form.
107. What is verification and validation?
Verification is a process of evaluating software  at development phase and to decide whether the product of a given  application satisfies the specified requirements. Validation is the process of evaluating software at the end of the development process and to check whether it meets the customer requirements.
108. What are different test levels?
There are four test levels
  1. Unit/component/program/module testing
  2. Integration testing
  3. System testing
  4. Acceptance testing
109. What is Integration testing?
Integration testing is a level of software testing process, where individual units of an application are combined and tested. It is usually performed after unit and functional testing.
110. What are the tables in testplans?
Test design, scope, test strategies , approach are various details that Test plan document consists of.
  1. Test case identifier
  2. Scope
  3. Features to be tested
  4. Features not to be tested
  5. Test strategy & Test approach
  6. Test deliverables
  7. Responsibilities
  8. Staffing and training
  9. Risk and Contingencies
111.  What is the difference between UAT (User Acceptance Testing) and System testing?
System Testing: System testing is finding defects when the system under goes testing as a whole, it is also known as end to end testing. In such type of testing, the application undergoes from beginning till the end.
UAT: User Acceptance Testing (UAT) involves running a product through a series of specific  tests  which determines whether the product will meet the needs of its users.

112. Mention the difference between Data Driven Testing and Retesting?
Retesting:  It is a process of checking bugs that are actioned by development team to verify that they are actually fixed.
Data Driven Testing (DDT):  In data driven testing process, application is tested with multiple test data. Application is tested with different set of values.
113. What are the valuable steps to resolve issues while testing?
  • Record : Log and handle any problems which has happened
  • Report: Report the issues to higher level manager
  • Control: Define the issue management process
114. What is the difference between test scenarios, test cases and test script?
Difference between test scenarios and test cases is that
Test Scenarios:  Test scenario is prepared before the actual testing starts, it includes plans for testing product, number of team members, environmental condition, making test cases, making test plans and all the features that are to be tested for the product.
Test Cases:  It is a document that contains the steps that has to be executed, it has been planned earlier.
Test Script:  It is written in a programming language and it’s a short program used to test part of functionality of the software system. In other words a written set of steps that should be performed manually.
115. What is Latent defect?
Latent defect: This defect is an existing defect in the system which does not cause any failure as the exact set of conditions has never been met
116. What are the two parameters which can be useful to know the quality of test execution?
To know the quality of test execution we can use two parameters
  • Defect reject ratio
  • Defect leakage ratio
117. What is the function of software testing tool “phantom”?
Phantom is a freeware, and is used for windows GUI automation scripting language.  It allows to take control of windows and functions automatically.  It can simulate any combination of key strokes and mouse clicks as well as menus, lists and more.
118. Explain what is Test Deliverables   ?
Test Deliverables are set of documents, tools and other components that has to be developed and maintained in support of testing.
There are different test deliverables at every phase of the software development lifecycle
  • Before Testing
  • During Testing
  • After the Testing
119. What is mutation testing?
Mutation testing is a technique to identify if a set of test data or test case is useful by intentionally introducing various code changes (bugs) and retesting with original test data/ cases to determine if the bugs are detected.
120. What all things you should consider before selecting automation tools for the AUT?
  • Technical Feasibility
  • Complexity level
  • Application stability
  • Test data
  • Application size
  • Re-usability of automated scripts
  • Execution across environment
121. How will you conduct Risk Analysis?
For the risk analysis following steps need to be implemented
a)      Finding the score of the risk
b)      Making a profile for the risk
c)       Changing the risk properties
d)      Deploy the resources of that test risk
e)      Making a database of risk
122. What are the categories of debugging?
Categories for debugging
a)      Brute force debugging
b)      Backtracking
c)       Cause elimination
d)      Program slicing
e)      Fault tree analysis
123. What is fault masking explain with example?
When presence of one defect hides the presence of another defect in the system is known as fault masking.
Example : If the “Negative Value” cause a firing of unhandled system exception,  the developer will prevent the negative values inpu. This will resolve the issue and hide the defect of unhandled exception firing.
124. Explain what is Test Plan ? What are the information that should be covered in Test Plan ?
A test plan can be defined as a document describing the scope, approach, resources and schedule of testing activities and a test plan should cover the following details.
  • Test Strategy
  • Test Objective
  • Exit/Suspension Criteria
  • Resource Planning
  • Test Deliverables
125. How you can eliminate the product risk in your project ?
To eliminate product risk in your project, there is simple yet crucial step that can reduce the product risk in your project.
  • Investigate the specification documents
  • Have discussions about the project with all stakeholders including the developer
  • As a real user walk around the website
126. What are the common risk that leads to the project failure?
The common risk that leads to a project failure are
  • Not having enough human resource
  • Testing Environment may not be set up properly
  • Limited Budget
  • Time Limitations
127.  On what basis you can arrive to an estimation for your project?
To estimate your project , you have to consider following points
  • Divide the whole project into a smallest tasks
  • Allocate each task to team members
  • Estimate the effort required to complete each task
  • Validate the estimation
128. Explain how you would allocate task to team members ?
TaskMember
  • Analyze software requirement specification
  • All the members
  • Create the test specification
  • Tester/Test Analyst
  • Build up the test environment
  • Test administrator
  • Execute the test cases
  • Tester, Test administrator
  • Report defects
  • Tester
129. Explain what is testing type and what are the commonly used testing type ?
To get an expected test outcome a standard procedure is followed which is referred as Testing Type.
Commonly used testing types are
  • Unit Testing:  Test the smallest code of an application
  • API Testing: Testing API created for the application
  • Integration Testing: Individual software modules are combined and tested
  • System Testing: Complete testing of system
  • Install/UnInstall Testing: Testing done from the point of client/customer view
  • Agile Testing: Testing through Agile technique
130. While monitoring your project what all things you have to consider ?
The things that has to be taken in considerations are
  • Is you project on schedule
  • Are you over budget
  • Are you working towards the same career goal
  • Have you got enough resources
  • Are there any warning signs of impending problems
  • Is there any pressure from management to complete the project sooner
131. What are the common mistakes which creates issues ?
  • Matching resources to wrong projects
  • Test manager lack of skills
  • Not listening to others
  • Poor Scheduling
  • Underestimating
  • Ignoring the small problems
  • Not following the process
132. What does a typical test report contains? What are the benefits of test reports?
A test report contains following things:
  • Project Information
  • Test Objective
  • Test Summary
  • Defect
The benefits of test reports are:
  • Current status of project and quality of product are informed
  • If required, stake holder and customer can take corrective action
  • A final document helps to decide whether the product is ready for release
133. What is test management review and why it is important?
Management review is also referred as Software Quality Assurance or SQA. SQA focusses more on the software process rather than the software work products.  It is a set of activities designed to make sure that the project manager follows the standard process.  SQA helps test manager to benchmark the project against the set standards.
134. What are the best practices for software quality assurance?
The best practices for an effective SQA implementation is
  • Continuous Improvement
  • Documentation
  • Tool Usage
  • Metrics
  • Responsibility by team members
  • Experienced SQA auditors
135. When is RTM (Requirement Traceability Matrix) prepared ?
RTM is prepared before test case designing.  Requirements should be traceable from review activities.
136. What is difference between Test matrix and Traceability matrix?
Test Matrix:  Test matrix is used to capture actual quality, effort, the plan, resources and time required to capture all phases of software testing
Traceability Matrix:Mapping between test cases and customer requirements is known as Traceability Matrix
137. In manual testing what are stubs and drivers?
Both stubs and drivers are part of incremental testing.  In incremental testing there are two approaches namely bottom up and top down approach. Drivers are used in bottom up testing and stub is used for top down approach. In order to test the main module, stub is used, whuich is a dummy code or program .
138. What are the step you would follow once you find the defect?
Once defect is found you would follow the step
a)      Recreate the defect
b)      Attach the screen shot
c)       Log the defect
139. Explain what is “Test Plan Driven” or “Key Word Driven” method of testing?
This technique uses the actual test case document developed by testers using a spread sheet containing special “key Words”. The key words control the processing.
140. What is DFD (Data Flow Diagram) ?
When a “flow of data” through an information system is graphically represented then it is known as Data Flow Diagram.  It is also used for the visualization of data processing.
141. Explain what is LCSAJ?
LCSAJ stands for ‘linear code sequence and jump’. It consists of the following three items
a)      Start of the linear sequence of executable statements
b)      End of the linear sequence
c)       The target line to which control flow is transferred at the end of the linear sequence
142. Explain what is N+1 testing?
The variation of regression testing is represented as N+1. In this technique the testing is performed in multiple cycles in which errors found in test cycle ‘N’ are resolved and re-tested in test cycle N+1.  The cycle is repeated unless there are no errors found.
143. What is Fuzz testing and when it is used?
Fuzz testing is used to detect security loopholes and coding errors in software.  In this technique random data is added to the system in attempt to crash the system.  If vulnerability persists, a tool called fuzz tester is used to determine potential causes. This technique is more useful for bigger projects but only detects major fault.
144. Mention what are the main advantages of statement coverage metric of software testing?
The benefit of statement coverage metric is that
a)      It does not require processing source code and can be applied directly to object code
b)      Bugs are distributed evenly through code, due to which percentage of executable statements covered reflects the percentage of faults discovered
145. How to generate test cases for replace string method?
a)      If characters in new string > characters in previous string.  None of the characters should get truncated
b)      If characters in new string< characters in previous string.  Junk characters should not be added
c)       Spaces after and before the string should not be deleted
d)      String should be replaced only for the first occurrence of the string
146. How will you handle a conflict amogst your team members ?
  • I will talk individually to each person and note their concerns
  • I will find solution to the common problems raised by team members
  • I will hold a team meeting , reveal the solution and ask people to co-operate
147. Mention what are the categories of defects?

Mainly there are three defect categories

  • Wrong: When requirement is implemented incorrectly
  • Missing: It is a variance from the specification, an indication that a specification was not implemented or a requirement of the customer is not met
  • Extra: A requirement incorporated into the product that was not given by the end customer. It is considered as a defect because it is a variance from the existing requirements

148. Explain how does a test coverage tool works?

The code coverage testing tool runs parallel while performing testing on the actual product. The code coverage tool monitors the executed statements of the source code. When the final testing is done we get a complete report of the pending statements and also get the coverage percentage.

149. Mention what is the difference between a “defect” and a “failure” in software testing?
In simple terms when a defect reaches the end customer it is called a failure while the defect is identified internally and resolved then it is referred as defect.

150. Explain how to test documents in a project that span across the software development lifecycle?
The project span across the software development lifecycle in following manner

  • Central/Project test plan: It is the main test plan that outlines the complete test strategy of the project. This plan is used till the end of the software development lifecycle
  • Acceptance test plan: This document begins during the requirement phase and is completed at final delivery
  • System test plan: This plan starts during the design plan and proceeds until the end of the project
  • Integration and Unit test plan: Both these test plans start during the execution phase and last until the final delivery

151. Explain which test cases are written first black boxes or white boxes?
Black box test cases are written first as to write black box test cases; it requires project plan and requirement document all these documents are easily available at the beginning of the project. While writing white box test cases requires more architectural understanding and is not available at the start of the project.

152. Explain what is the difference between latent and masked defects?
  • Latent defect: A latent defect is an existing defect that has not caused a failure because the sets of conditions were never met
  • Masked defect: It is an existing defect that has not caused a failure because another defect has prevented that part of the code from being executed

153. Mention what is bottom up testing?
Bottom up testing is an approach to integration testing, where the lowest level components are tested first, then used to facilitate the testing of higher level components. The process is repeated until the component at the top of the hierarchy is tested.

154. Mention what are the different types of test coverage techniques?
Different types of test coverage techniques include

  • Statement Coverage: It verifies that each line of source code has been executed and tested
  • Decision Coverage: It ensures that every decision in the source code is executed and tested
  • Path Coverage: It ensures that every possible route through a given part of code is executed and tested

155. Mention what is the meaning of breadth testing?
Breadth testing is a test suite that exercises the full functionality of a product but does not test features in detail

156. Mention what is the difference between Pilot and Beta testing?
The difference between pilot and beta testing is that pilot testing is actually done using the product by the group of user before the final deployment and in beta testing we do not input real data, but it is installed at the end customer to validate if the product can be used in production.

157. Explain what is the meaning of Code Walk Through?
Code Walk Through is the informal analysis of the program source code to find defects and verify coding techniques

158. Mention what are the basic components of defect report format?
The basic components of defect report format includes

  • Project Name
  • Module Name
  • Defect detected on
  • Defect detected by
  • Defect ID and Name
  • Snapshot of the defect
  • Priority and Severity status
  • Defect resolved by
  • Defect resolved on

159. Mention what is the purpose behind doing end-to-end testing?
End-to end testing is done after functional testing. The purpose behind doing end-to-end testing is that

  • To validate the software requirements and integration with external interfaces
  • Testing application in real world environment scenario
  • Testing of interaction between application and database

160. Explain what it means by test harness?
A test harness is configuring a set of tools and test data to test an application in various conditions, it involves monitoring the output with expected output for correctness.

161. Explain in a testing project what testing activities would you automate?
In a testing project testing activities you would automate are

  • Tests that need to be run for every build of the application
  • Tests that use multiple data for the same set of actions
  • Identical tests that needs to be executed using different browsers
  • Mission critical pages
  • Transaction with pages that do not change in short time
—————————————————————————————————————————————————-

1. What are the components of an SRS?
An SRS contains the following basic components:
Introduction
Overall Description
External Interface Requirements
System Requirements
System Features
manual testing interview questions
   2. What is the difference between a test plan and a QA plan?
A test plan lays out what is to be done to test the product and includes how quality control will work to identify errors and defects.  A QA plan on the other hand is more concerned with prevention of errors and defects rather than testing and fixing them.
   3. How do you test an application if the requirements are not available?
If requirements documentation is not available for an application, a test plan can be written based on assumptions made about the application.  Assumptions that are made should be well documented in the test plan.
   4. What is a peer review?
Peer reviews are reviews conducted among people that work on the same team.  For example, a test case that was written by one QA engineer may be reviewed by a developer and/or another QA engineer.
    5. How can you tell when enough test cases have been created to adequately test a system or module?
You can tell that enough test cases have been created when there is at least one test case to cover every requirement.  This ensures that all designed features of the application are being tested.
   6. Who approves test cases?
The approver of test cases varies from one organization to the next. In some organizations, the QA lead may approve the test cases while another approves them as part of peer reviews.
   7. Give an example of what can be done when a bug is found.
When a bug is found, it is a good idea to run more tests to be sure that the problem witnessed can be clearly detailed. For example, let say a test case fails when Animal=Cat and.  A tester should run more tests to be sure that the same problem doesn’t exist with Animal=dog.  Once the tester is sure of the full scope of the bug can be documented and the bug adequately reported. This question is one of the most frequently asked manual testing interview questions.
   8. Who writes test plans and test cases?
Test plans are typically written by the quality assurance lead while testers usually write test cases.
   9. Is quality assurance and testing the same?
Quality assurance and testing is not the same.  Testing is considered to be a subset of QA. QA is should be incorporated throughout the software development life cycle while testing is the phase that occurs after the coding phase.

  10. What is a negative test case?
Negative test cases are created based on the idea of testing in a destructive manner.  For example, testing what will happen if inappropriate inputs are entered into the application.
  11. If an application is in production, and one module of code is modified, is it necessary to retest just that module or should all of the other modules be tested as well?
It is a good idea to perform regression testing and to check all of the other modules as well.  At the least, system testing should be performed.
  12. What should be included in a test strategy?
The test strategy includes a plan for how to test the application and exactly what will be tested (user interface, modules, processes, etc.).  It establishes limits for testing and indicates whether manual or automated testing will be used.
  13. What can be done to develop a test for a system if there are no functional specifications or any system and development documents?
When there are no functional specifications or system development documents, the tester should familiarize themselves with the product and the code.  It may also be helpful to perform research to find similar products on the market.
  14. What are the functional testing types?
The following are the types of functional testing:
  • Compatibility
  • Configuration
  • Error handling
  • Functionality
  • Input domain
  • Installation
  • Inter-systems
  • Recovery
  15. What is the difference between sanity testing and smoke testing?
When sanity testing is conducted, the product is sent through a preliminary round of testing with the test group in order to check the basic functionality such as button functionality.  Smoke testing, on the other hand is conducted by developers based on the requirements of the client.
  16. Explain random testing.
Random testing involves checking how the application handles input data that is generated at random. Data types are typically ignored and a random sequence of letter, numbers, and other characters are inputted into the data field.
  17. Define smoke testing.
Smoke testing is a form of software testing that is not exhaustive and checks only the most crucial components of the software but does not check in more detail.

  Advanced Manual Testing Interview Questions

   18. What steps are involved in sanity testing?
Sanity testing is very similar to smoke testing. It is the initial testing of a component or application that is done to make sure that it is functioning at the most basic level and it is stable enough to continue more detailed testing.
   19. What is the difference between WinRunner and Rational Robot?
WinRunner is a functional test tool but Rational Robot is capable of both functional and performance testing. Also, WinRunner has 4 verification points and Rational Robot has 13 verification points.
   20. What is the purpose of the testing process?
The purpose of the testing process is to verifying that input data produces the anticipated output.
   21. What is the difference between QA and testing?
The goals of QA are very different from the goals of testing.  The purpose of QA is to prevent errors is the application while the purpose of testing is to find errors.
   22. What is the difference between Quality Control and Quality Assurance?
Quality control (QC) and quality assurance (QA) are closely linked but are very different concepts. While QC evaluates a developed product, the purpose of QA is to ensure that the development process is at a level that makes certain that the system or application will meet the requirements.
   23. What is the difference between regression testing and retesting?
Regression testing is performing tests to ensure that modifications to a module or system do not have a negative effect on previous releases.  Retesting is merely running the same testing again. Regression testing is widely asked manual testing interview questions and hence further research to understand this topic is needed.
   24. Explain the difference between bug severity and bug priority.
Bug severity refers to the level of impact that the bug has on the application or system while bug priority refers to the level of urgency in the need for a fix.
   25. What is the difference between system testing and integration testing?
For system testing, the entire system as a whole is checked, whereas for integration testing, the interaction between the individual modules are tested.
   26. Explain the term bug.
A bug is an error found while running a program. Bug fall into two categories: logical and syntax.

    Senior Tester Interview Questions

   27. Explain the difference between functional and structural testing.
Functional testing is considered to be behavioral or black box testing in which the tester verifies that the system or application functions according to specification.  Structural testing on the other hand is based on the code or algorithms and is considered to be white box testing.
   28. Define defect density.
Defect density is the total number of defects per lines of code.
   29. When is a test considered to be successful?
The purpose of testing is to ensure that the application operates according to the requirements and to discover as many errors and bugs as possible.  This means that tests that cover more functionality and expose more errors are considered to be the most successful.
   30. What good bug tracking systems have you used?
This is a simple interview question about your experience with bug tracking.  Provide the system/systems that you are most familiar with if any at all.   It would also be good to provide a comparison of the pros and cons of several if you have experience. Bug tracking is the essence of testing process and is a must asked manual testing interview questions in any interview. Do not forget this.
   31. In which phase should testing begin – requirements, planning, design, or coding?
Testing should begin as early as the requirements phase.
   32. Can you test a program and find 100% of the errors?
It is impossible to fine all errors in an application mostly because there is no way to calculate how many errors exist.  There are many factors involved in such a calculation such as the complexity of the program, the experience of the programmer, and so on. This Manual testing interview questions is the most tricky questions considered by testers.
   33. What is the difference between debugging and testing?
The main difference between debugging and testing is that debugging is typically conducted by a developer who also fixes errors during the debugging phase.  Testing on the other hand, finds errors rather than fixes them.  When a tester finds a bug, they usually report it so that a developer can fix it.
   34. How should testing be conducted?
Testing should be conducted based on the technical requirements of the application.
   35. What is considered to be a good test?
Testing that covers most of the functionality of an object or system is considered to be a good test.
   36. What is the difference between top-down and bottom-up testing?
Top-Down testing begins with the system and works its way down to the unit level.  Bottom-up testing checks in the opposite direction, unit level to interface to overall system. Both have value but bottom-up testing usually aids in discovering defects earlier in the development cycle, when the cost to fix errors is lower.
   37. Explain how to develop a test plan and a test case.
A test plan consists of a set of test cases. Test cases are developed based on requirement and design documents for the application or system. Once these documents are thoroughly reviewed, the test cases that will make up the test plan can be created.
   38. What is the role of quality assurance in a product development lifecycle?
Quality assurance should be involved very early on in the development life cycle so that they can have a better understanding of the system and create sufficient test cases. However, QA should be separated from the development team so that the team is not able to build influence on the QA engineers.
   39. What is the average size of executables that you have created?
This is a simple interview question about our experience with executables.  If you know the size of any that you’ve created, simply provide this info.
   40. What version of the Oracle are you familiar with?
This is an interview question about experience.  Simply provide the versions of the software that you have experience with.
   41. How is an SQL query executed in Oracle 8?
This is an interview question to check your experience with Oracle and you can simply provide the answer “from the command prompt.”  If you do not have Oracle experience, do not pretend and simply state that you have not worked on an Oracle database. Though this is a common manual testing interview questions, the answers can be different. Because if you have experience in other tools such as TOAD, SQL server etc, you can conveniently answer as per your experience.
  42. Have you performed tests on the front-end and the back-end?
This is an interview question in which you should explain whether you performed testing on the GUI or the server portion of previous applications.
  43. What is the most difficult problem you’ve found during testing?
This is a simple interview question in which you should provide an example. This is one of  most tricky manual testing interview questions as your answer will decide your job. You need to answer in such a way that your problem solving skills and your eagerness to learn new things, and your dedication towards the job will indicated by your answers.
  44. What were your testing responsibilities at your previous employer?
This interview question is very likely being asked to verify your knowledge of your resume. Make sure that you know what is on your resume and that it is the truth.

—————————————————————————————————————————————————-
1. What is a software process?
A software process is a series of steps used to solve a problem. The following figure shows a pictorial view of how an organization has defined a way to solve risk problems. In the diagram we have shown two branches: one is the process and the second branch shows a sample risk mitigation process for an organization. For instance, the risk mitigation process defines what step any department should follow to mitigate a risk. The process is as follows:
Software Testing Image
  • Identify the risk of the project by discussion, proper requirement gathering, and forecasting.
  • Once you have identified the risk prioritize which risk has the most impact and should be tackled on a priority basis.
  • Analyze how the risk can be solved by proper impact analysis and planning.
  • Finally, using the above analysis, we mitigate the risk.
2. What are the different cost elements involved in implementing a process in an organization?
Below are some of the cost elements involved in the implementing process:
Software Testing Image
  • Salary: This forms the major component of implementing any process, the salary of the employees. Normally while implementing a process in a company either organization can recruit full-time people or they can share resources part-time for implementing the process.
  • Consultant: If the process is new it can also involve consultants which are again an added cost.
  • Training Costs: Employees of the company may also have to undergo training in order to implement the new process
  • Tools: In order to implement the process an organization will also need to buy tools which again need to be budgeted for.
3. What is a maturity level?
A maturity level specifies the level of performance expected from an organization.
Software Testing Image
4. What is a model?
A model is nothing but best practices followed in an industry to solve issues and problems. Models are not made in a day but are finalized and realized by years of experience and continuous improvements.
Many companies reinvent the wheel rather than following time tested models in the industry.
Software Testing Image
5. Can you explain process areas in CMMI?
A process area is the area of improvement defined by CMMI. Every maturity level consists of process areas. A process area is a group of practices or activities performed collectively to achieve a specific objective. For instance, you can see from the following figure we have process areas such as project planning, configuration management, and requirement gathering.
Software Testing Image
6. Can you explain tailoring?
As the name suggests, tailoring is nothing but changing an action to achieve an objective according to conditions. Whenever tailoring is done there should be adequate reasons for it. Remember when a process is defined in an organization it should be followed properly. So even if tailoring is applied the process is not bypassed or omitted.
Software Testing Image
—————————————————————————————————————————————————-
1. Can you explain boundary value analysis?
In some projects there are scenarios where we need to do boundary value testing. For instance, let’s say for a bank application you can withdraw a maximum of 25000 and a minimum of 100. So in boundary value testing we only test the exact boundaries rather than hitting in the middle. That means we only test above the max and below the max. This covers all scenarios. The following figure shows the boundary value testing for the bank application which we just described. TC1 and TC2 are sufficient to test all conditions for the bank. TC3 and TC4 are just duplicate/redundant test cases which really do not add any value to the testing. So by applying proper boundary value fundamentals we can avoid duplicate test cases, which do not add value to the testing.
Software Testing Image
2. Can you explain equivalence partitioning?
In equivalence partitioning we identify inputs which are treated by the system in the same way and produce the same results. You can see from the following figure applications TC1 and TC2 give the same results (i.e., TC3 and TC4 both give the same result, Result2). In short, we have two redundant test cases. By applying equivalence partitioning we minimize the redundant test cases.
Software Testing Image
So apply the test below to see if it forms an equivalence class or not:
  • All the test cases should test the same thing.
  • They should produce the same results.
  • If one test case catches a bug, then the other should also catch it.
  • If one of them does not catch the defect, then the other should not catch it.
3. Can you explain random/monkey testing?
Random testing is sometimes called monkey testing. In Random testing, data is generated randomly often using a tool. For instance, the following figure shows how randomly-generated data is sent to the system. This data is generated either using a tool or some automated mechanism. With this randomly generated input the system is then tested and results are observed accordingly.
Software Testing Image
Random testing has the following weakness:
  • They are not realistic.
  • Many of the tests are redundant and unrealistic.
  • You will spend more time analyzing results.
  • You cannot recreate the test if you do not record what data was used for testing.
This kind of testing is really of no use and is normally performed by newcomers. Its best use is to see if the system will hold up under adverse effects.
4. What are semi-random test cases?
Software Testing Image
As the name specifies semi-random testing is nothing but controlling random testing and removing redundant test cases. So what we do is perform random test cases and equivalence partitioning to those test cases, which in turn removes redundant test cases, thus giving us semi-random test cases.
5. Can you explain a pair-wise defect?
Orthogonal array is a two-dimensional array in which if we choose any two columns in the array and all the combinations of numbers will appear in those columns. The following figure shows a simple L9(34) orthogonal array. In this the number 9 indicates that it has 9 rows. The number 4 indicates that it has 4 columns and 3 indicates that each cell contains a 1, 2, and 3. Choose any two columns. Let’s choose column 1 and 2. It has (1,1), (1,2), (1,3), (2,1), (2,2), (2,3), (3,1), (3,2), (3,3) combination values. As you can see these values cover all the values in the array. Compare the values with the combination of column 3 and 4 and they will fall in some pair. This is applied in software testing which helps us eliminate duplicate test cases.
Software Testing Image
6. What is negative and positive testing?
A negative test is when you put in an invalid input and receive errors.
A positive test is when you put in a valid input and expect some action to be completed in accordance with the specification.
Software Testing Image
7. How did you define severity ratings in your project?
There are four types of severity ratings as shown in the table:
Software Testing Image
  • Severity 1 (showstoppers): These kinds of defects do not allow the application to move ahead. So they are also called showstopper defects.
  • Severity 2 (application continues with severe defects): Application continues working with these types of defects, but they can have high implications, later, which can be more difficult to remove.
  • Severity 3 (application continues with unexpected results): In this scenario the application continues but with unexpected results.
  • Severity 4 (suggestions): Defects with these severities are suggestions given by the customer to make the application better. These kinds of defects have the least priority and are considered at the end of the project or during the maintenance stage of the project.
8. Can you explain exploratory testing?
Exploratory testing is also called adhoc testing, but in reality it’s not completely adhoc. Ad hoc testing is an unplanned, unstructured, may be even an impulsive journey through the system with the intent of finding bugs. Exploratory testing is simultaneous learning, test design, and test execution. In other words, exploratory testing is any testing done to the extent that the tester proactively controls the design of the tests as those tests are performed and uses information gained while testing to design better tests. Exploratory testers are not merely keying in random data, but rather testing areas that their experience (or imagination) tells them are important and then going where those tests take them.
Software Testing Image
9. Can you explain decision tables?
As the name suggests they are tables that list all possible inputs and all possible outputs. A general form of decision table is shown in the following figure.
Software Testing Image
Condition 1 through Condition N indicates various input conditions. Action 1 through Condition N are actions that should be taken depending on various input combinations. Each rule defines unique combinations of conditions that result in actions associated with that rule.
—————————————————————————————————————————————————-
1. What are the different Ways of doing Black Box testing?
There are five methodologies most frequently used:
  1. Top down according to budget
  2. WBS (Work Breakdown Structure)
  3. Guess and gut feeling
  4. Early project data
  5. TPA (Test Point Analysis)
2. Can you explain TPA analysis?
TPA is a technique used to estimate test efforts for black box testing. Inputs for TPA are the counts derived from function points.
Below are the features of TPA:
  • Used to estimate only black box testing.
  • Require function points as inputs.
Software Testing Image
3. Can you explain the elementary process?
Software applications are a combination of elementary processes. When elementary processes come together they form a software application.
There are two types of elementary processes:
  1. Dynamic elementary Process: The dynamic elementary process moves data from an internal application boundary to an external application boundary or vice-versa. Example: Input data screen where a user inputs data into the application. Data moves from the input screen inside the application.
  2. Static elementary Process: Static elementary process which maintains the data of the application either inside the application boundary or in the external application boundary. For example, in a customer maintenance screen maintaining customer data is a static elementary process.
4. How do you estimate white box testing?
The testing estimates derived from function points are actually the estimates for white box testing. So in the following figure the man days are actually the estimates for white box testing of the project. It does not take into account black box testing estimation.
5. Can you explain the various elements of function points FTR, ILF, EIF, EI, EO, EQ, and GSC?
  • File Type References (FTRs): An FTR is a file or data referenced by a transaction. An FTR should be an ILF or EIF. So count each ILF or EIF read during the process. If the EP is maintained as an ILF then count that as an FTR. So by default you will always have one FTR in any EP.
  • Internal Logical Files (ILFs): ILFs are logically related data from a user’s point of view. They reside in the internal application boundary and are maintained through the elementary process of the application.ILFs can have a maintenance screen but not always.
  • External Interface Files (EIFs): EIFs reside in the external application boundary. EIFs are used only for reference purposes and are not maintained by internal applications. EIFs are maintained by external applications.
  • External Input (EI): EIs are dynamic elementary processes in which data is received from the external application boundary. Example: User interaction screens, when data comes from the User Interface to the Internal Application.
  • External Output (EO): EOs are dynamic elementary processes in which derived data crosses from the internal application boundary to the external application boundary.
  • External Inquiry (EQ): An EQ is a dynamic elementary process in which result data is retrieved from one or more ILF or EIF. In this EP some input requests have to enter the application boundary. Output results exits the application boundary.
  • General System Characteristics (GSCs): This section is the most important section. All the previously discussed sections relate only to applications. But there are other things also to be considered while making software, such as are you going to make it an N-Tier application, what’s the performance level the user is expecting, etc. These other factors are called GSCs.
6. Can you explain an Application boundary?
The first step in FPA is to define the boundary. There are two types of major boundaries:
  1. Internal Application Boundary
  2. External Application Boundary
The external application boundary can be identified using the following litmus test:
  1. Does it have or will it have any other interface to maintain its data, which was not developed by you?.
  2. Does your program have to go through a third party API or layer? In order for your application to interact with the tax department application your code has to interact with the tax department API.
  3. The best litmus test is to ask yourself if you have full access to the system. If you have full rights to make changes then it is an internal application boundary, otherwise it is an external application boundary.
7. Can you explain how TPA works?
There are three main elements which determine estimates for black box testing: size, test strategy, and productivity. Using all three elements we can determine the estimate for black box testing for a given project. Let’s take a look at these elements.
  1. Size: The most important aspect of estimating is definitely the size of the project. The size of a project is mainly defined by the number of function points. But a function point fails or pays the least attention to the following factors:
    1. Complexity: Complexity defines how many conditions exist in function points identified during a project. More conditions means more test cases which means more testing estimates. Software Testing Image
    2. Interfacing: How much does one function affect the other part of the system? If a function is modified then accordingly the other systems have to be tested as one function always impacts another.
    3. Uniformity: How reusable is the application? It is important to consider how many similar structured functions exist in the system. It is important to consider the extent to which the system allows testing with slight modifications.
  2. Test strategy: Every project has certain requirements. The importance of all these requirements also affects testing estimates. Any requirement importance is from two perspectives: one is the user importance and the other is the user usage. Depending on these two characteristics a requirement rating can be generated and a strategy can be chalked out accordingly, which also means that estimates vary accordingly.
  3. Productivity: This is one more important aspect to be considered while estimating black box testing. Productivity depends on many aspects. Software Testing Image
8. Can you explain steps in function points?
Below are the steps in function points:
  1. First Count ILF, EIF, EI, EQ, RET, DET, FTR and use the rating tables. After you have counted all the elements you will get the unadjusted function points.
  2. Put rating values 0 to 5 to all 14 GSC. Adding total of all 14 GSC to come out with total VAF. Formula for VAF = 0.65 + (sum of all GSC factor/100).
  3. Finally, make the calculation of adjusted function point. Formula: Total function point = VAF * Unadjusted function point.
  4. Make estimation how many function points you will do per day. This is also called as “Performance factor”.On basis of performance factor, you can calculate Man/Days.
9. Can you explain function points?
Function points are a unit measure for software much like an hour is to measuring time, miles are to measuring distance or Celsius is to measuring temperature. Function Points are an ordinal measure much like other measures such as kilometers, Fahrenheit, hours, so on and so forth.
This approach computes the total function points (FP) value for the project, by totaling the number of external user inputs, inquiries, outputs, and master files, and then applying the following weights: inputs (4), outputs (5), inquiries (4), and master files (10). Each FP contributor can be adjusted within a range of +/-35% for a specific project complexity.

—————————————————————————————————————————————————-
  1. What is Acceptance Testing?
    Testing conducted to enable a user/customer to determine whether to accept a software product. Normally performed to validate the software meets a set of agreed acceptance criteria.2. What is Accessibility Testing?
    Verifying a product is accessible to the people having disabilities (deaf, blind, mentally disabled etc.).
    3. What is Ad Hoc Testing?
    A testing phase where the tester tries to ‘break’ the system by randomly trying the system’s functionality. Can include negative testing as well. See also Monkey Testing.
    4. What is Agile Testing?
    Testing practice for projects using agile methodologies, treating development as the customer of testing and emphasizing a test-first design paradigm. See also Test Driven Development.
    5. What is Application Binary Interface (ABI)?
    A specification defining requirements for portability of applications in binary forms across different system platforms and environments.
    6. What is Application Programming Interface (API)?
    A formalized set of software calls and routines that can be referenced by an application program in order to access supporting system or network services.
    7. What is Automated Software Quality (ASQ)?
    The use of software tools, such as automated testing tools, to improve software quality.
    8. What is Automated Testing?
    Testing employing software tools which execute tests without manual intervention. Can be applied in GUI, performance, API, etc. testing. The use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions.
    9. What is Backus-Naur Form?
    A metalanguage used to formally describe the syntax of a language.
    10. What is Basic Block?
    A sequence of one or more consecutive, executable statements containing no branches.
    11. What is Basis Path Testing?
    A white box test case design technique that uses the algorithmic flow of the program to design tests.
    12. What is Basis Set?
    The set of tests derived using basis path testing.
    13. What is Baseline?
    The point at which some deliverable produced during the software engineering process is put under formal change control.
    14. What you will do during the first day of job?
    What would you like to do five years from now?
    15. What is Beta Testing?
    Testing of a release of a software product conducted by customers.
    16. What is Binary Portability Testing?
    Testing an executable application for portability across system platforms and environments, usually for conformation to an ABI specification.
    17. What is Black Box Testing?
    Testing based on an analysis of the specification of a piece of software without reference to its internal workings. The goal is to test how well the component conforms to the published requirements for the component.
    18. What is Bottom Up Testing?
    An approach to integration testing where the lowest level components are tested first, then used to facilitate the testing of higher level components. The process is repeated until the component at the top of the hierarchy is tested.
    19. What is Boundary Testing?
    Test which focus on the boundary or limit conditions of the software being tested. (Some of these tests are stress tests).
    20. What is Bug?
    A fault in a program which causes the program to perform in an unintended or unanticipated manner.
    20. What is Defect?
    If software misses some feature or function from what is there in requirement it is called as defect.
    21. What is Boundary Value Analysis?
    BVA is similar to Equivalence Partitioning but focuses on “corner cases” or values that are usually out of range as defined by the specification. his means that if a function expects all values in range of negative 100 to positive 1000, test inputs would include negative 101 and positive 1001.
    22. What is Branch Testing?
    Testing in which all branches in the program source code are tested at least once.
    23. What is Breadth Testing?
    A test suite that exercises the full functionality of a product but does not test features in detail.
    24. What is CAST?
    Computer Aided Software Testing.
    25. What is Capture/Replay Tool?
    A test tool that records test input as it is sent to the software under test. The input cases stored can then be used to reproduce the test at a later time. Most commonly applied to GUI test tools.
    26. What is CMM?
    The Capability Maturity Model for Software (CMM or SW-CMM) is a model for judging the maturity of the software processes of an organization and for identifying the key practices that are required to increase the maturity of these processes.
    27. What is Cause Effect Graph?
    A graphical representation of inputs and the associated outputs effects which can be used to design test cases.
    28. What is Code Complete?
    Phase of development where functionality is implemented in entirety; bug fixes are all that are left. All functions found in the Functional Specifications have been implemented.
    29. What is Code Coverage?
    An analysis method that determines which parts of the software have been executed (covered) by the test case suite and which parts have not been executed and therefore may require additional attention.
    30. What is Code Inspection?
    A formal testing technique where the programmer reviews source code with a group who ask questions analyzing the program logic, analyzing the code with respect to a checklist of historically common programming errors, and analyzing its compliance with coding standards.
    31. What is Code Walkthrough?
    A formal testing technique where source code is traced by a group with a small set of test cases, while the state of program variables is manually monitored, to analyze the programmer’s logic and assumptions.
    32. What is Coding?
    The generation of source code.
    33. What is Compatibility Testing?
    Testing whether software is compatible with other elements of a system with which it should operate, e.g. browsers, Operating Systems, or hardware.
    34. What is Component?
    A minimal software item for which a separate specification is available.
    35. What is Component Testing?
    Testing of individual software components (Unit Testing).
    36. What is Concurrency Testing?
    Multi-user testing geared towards determining the effects of accessing the same application code, module or database records. Identifies and measures the level of locking, deadlocking and use of single-threaded code and locking semaphores.
    37. What is Conformance Testing?
    The process of testing that an implementation conforms to the specification on which it is based. Usually applied to testing conformance to a formal standard.
    38. What is Context Driven Testing?
    The context-driven school of software testing is flavor of Agile Testing that advocates continuous and creative evaluation of testing opportunities in light of the potential information revealed and the value of that information to the organization right now.
    39. What is Conversion Testing?
    Testing of programs or procedures used to convert data from existing systems for use in replacement systems.
    40. What is Cyclomatic Complexity?
    A measure of the logical complexity of an algorithm, used in white-box testing.
    41. What is Data Dictionary?
    A database that contains definitions of all data items defined during analysis.
    42. What is Data Flow Diagram?
    A modeling notation that represents a functional decomposition of a system.
    43. What is Data Driven Testing?
    Testing in which the action of a test case is parameterized by externally defined data values, maintained as a file or spreadsheet. A common technique in Automated Testing.
    44. What is Debugging?
    The process of finding and removing the causes of software failures.
    45. What is Defect?
    Nonconformance to requirements or functional / program specification
    46. What is Dependency Testing?
    Examines an application’s requirements for pre-existing software, initial states and configuration in order to maintain proper functionality.
    47. What is Depth Testing?
    A test that exercises a feature of a product in full detail.
    48. What is Dynamic Testing?
    Testing software through executing it. See also Static Testing.
    49. What is Emulator?
    A device, computer program, or system that accepts the same inputs and produces the same outputs as a given system.
    50. What is Endurance Testing?
    Checks for memory leaks or other problems that may occur with prolonged execution.
    51. What is End-to-End testing?
    Testing a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate.
    52. What is Equivalence Class?
    A portion of a component’s input or output domains for which the component’s behaviour is assumed to be the same from the component’s specification.
    53. What is Equivalence Partitioning?
    A test case design technique for a component in which test cases are designed to execute representatives from equivalence classes.
    54. What is Exhaustive Testing?
    Testing which covers all combinations of input values and preconditions for an element of the software under test.
    55. What is Functional Decomposition?
    A technique used during planning, analysis and design; creates a functional hierarchy for the software.
    54. What is Functional Specification?
    A document that describes in detail the characteristics of the product with regard to its intended features.
    55. What is Functional Testing?
    Testing the features and operational behavior of a product to ensure they correspond to its specifications. Testing that ignores the internal mechanism of a system or component and focuses solely on the outputs generated in response to selected inputs and execution conditions. or Black Box Testing.
    56. What is Glass Box Testing?
    A synonym for White Box Testing.
    57. What is Gorilla Testing?
    Testing one particular module, functionality heavily.
    58. What is Gray Box Testing?
    A combination of Black Box and White Box testing methodologies? testing a piece of software against its specification but using some knowledge of its internal workings.
    59. What is High Order Tests?
    Black-box tests conducted once the software has been integrated.
    60. What is Independent Test Group (ITG)?
    A group of people whose primary responsibility is software testing,
    61. What is Inspection?
    A group review quality improvement process for written material. It consists of two aspects; product (document itself) improvement and process improvement (of both document production and inspection).
    62. What is Integration Testing?
    Testing of combined parts of an application to determine if they function together correctly. Usually performed after unit and functional testing. This type of testing is especially relevant to client/server and distributed systems.
    63. What is Installation Testing?
    Confirms that the application under test recovers from expected or unexpected events without loss of data or functionality. Events can include shortage of disk space, unexpected loss of communication, or power out conditions.
    64. What is Load Testing?
    See Performance Testing.
    65. What is Localization Testing?
    This term refers to making software specifically designed for a specific locality.
    66. What is Loop Testing?
    A white box testing technique that exercises program loops.
    67. What is Metric?
    A standard of measurement. Software metrics are the statistics describing the structure or content of a program. A metric should be a real objective measurement of something such as number of bugs per lines of code.
    68. What is Monkey Testing?
    Testing a system or an Application on the fly, i.e just few tests here and there to ensure the system or an application does not crash out.
    69. What is Negative Testing?
    Testing aimed at showing software does not work. Also known as “test to fail”. See also Positive Testing.
    70. What is Path Testing?
    Testing in which all paths in the program source code are tested at least once.
    71. What is Performance Testing?
    Testing conducted to evaluate the compliance of a system or component with specified performance requirements. Often this is performed using an automated test tool to simulate large number of users. Also know as “Load Testing”.
    72. What is Positive Testing?
    Testing aimed at showing software works. Also known as “test to pass”. See also Negative Testing.
    73. What is Quality Assurance?
    All those planned or systematic actions necessary to provide adequate confidence that a product or service is of the type and quality needed and expected by the customer.
    74. What is Quality Audit?
    A systematic and independent examination to determine whether quality activities and related results comply with planned arrangements and whether these arrangements are implemented effectively and are suitable to achieve objectives.
    75. What is Quality Circle?
    A group of individuals with related interests that meet at regular intervals to consider problems or other matters related to the quality of outputs of a process and to the correction of problems or to the improvement of quality.
    76. What is Quality Control?
    The operational techniques and the activities used to fulfill and verify requirements of quality.
    77. What is Quality Management?
    That aspect of the overall management function that determines and implements the quality policy.
    78. What is Quality Policy?
    The overall intentions and direction of an organization as regards quality as formally expressed by top management.
    79. What is Quality System?
    The organizational structure, responsibilities, procedures, processes, and resources for implementing quality management.
    80. What is Race Condition?
    A cause of concurrency problems. Multiple accesses to a shared resource, at least one of which is a write, with no mechanism used by either to moderate simultaneous access.
    81. What is Ramp Testing?
    Continuously raising an input signal until the system breaks down.
    82. What is Recovery Testing?
    Confirms that the program recovers from expected or unexpected events without loss of data or functionality. Events can include shortage of disk space, unexpected loss of communication, or power out conditions.
    83. What is Regression Testing?
    Retesting a previously tested program following modification to ensure that faults have not been introduced or uncovered as a result of the changes made.
    84. What is Release Candidate?
    A pre-release version, which contains the desired functionality of the final version, but which needs to be tested for bugs (which ideally should be removed before the final version is released).
    85. What is Sanity Testing?
    Brief test of major functional elements of a piece of software to determine if its basically operational. See also Smoke Testing.
    86. What is Scalability Testing?
    Performance testing focused on ensuring the application under test gracefully handles increases in work load.
    87. What is Security Testing?
    Testing which confirms that the program can restrict access to authorized personnel and that the authorized personnel can access the functions available to their security level.
    88. What is Smoke Testing?
    A quick-and-dirty test that the major functions of a piece of software work. Originated in the hardware testing practice of turning on a new piece of hardware for the first time and considering it a success if it does not catch on fire.
    89. What is Soak Testing?
    Running a system at high load for a prolonged period of time. For example, running several times more transactions in an entire day (or night) than would be expected in a busy day, to identify and performance problems that appear after a large number of transactions have been executed.
    90. What is Software Requirements Specification?
    A deliverable that describes all data, functional and behavioral requirements, all constraints, and all validation requirements for software/
    91. What is Software Testing?
    A set of activities conducted with the intent of finding errors in software.
    92. What is Static Analysis?
    Analysis of a program carried out without executing the program.
    93. What is Static Analyzer?
    A tool that carries out static analysis.
    94. What is Static Testing?
    Analysis of a program carried out without executing the program.
    95. What is Storage Testing?
    Testing that verifies the program under test stores data files in the correct directories and that it reserves sufficient space to prevent unexpected termination resulting from lack of space. This is external storage as opposed to internal storage.
    96. What is Stress Testing?
    Testing conducted to evaluate a system or component at or beyond the limits of its specified requirements to determine the load under which it fails and how. Often this is performance testing using a very high level of simulated load.
    97. What is Structural Testing?
    Testing based on an analysis of internal workings and structure of a piece of software. See also White Box Testing.
    98. What is System Testing?
    Testing that attempts to discover defects that are properties of the entire system rather than of its individual components.
    99. What is Testability?
    The degree to which a system or component facilitates the establishment of test criteria and the performance of tests to determine whether those criteria have been met.
    100. What is Testing?
    The process of exercising software to verify that it satisfies specified requirements and to detect errors. The process of analyzing a software item to detect the differences between existing and required conditions (that is, bugs), and to evaluate the features of the software item (Ref. IEEE Std 829). The process of operating a system or component under specified conditions, observing or recording the results, and making an evaluation of some aspect of the system or component. What is Test Automation? It is the same as Automated Testing.
    101. What is Test Bed?
    An execution environment configured for testing. May consist of specific hardware, OS, network topology, configuration of the product under test, other application or system software, etc. The Test Plan for a project should enumerated the test beds(s) to be used.
    102. What is Test Case?
    Test Case is a commonly used term for a specific test. This is usually the smallest unit of testing. A Test Case will consist of information such as requirements testing, test steps, verification steps, prerequisites, outputs, test environment, etc. A set of inputs, execution preconditions, and expected outcomes developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requirement. Test Driven Development? Testing methodology associated with Agile Programming in which every chunk of code is covered by unit tests, which must all pass all the time, in an effort to eliminate unit-level and regression bugs during development. Practitioners of TDD write a lot of tests, i.e. an equal number of lines of test code to the size of the production code.
    103. What is Test Driver?
    A program or test tool used to execute a tests. Also known as a Test Harness.
    104. What is Test Environment?
    The hardware and software environment in which tests will be run, and any other software with which the software under test interacts when under test including stubs and test drivers.
    105. What is Test First Design?
    Test-first design is one of the mandatory practices of Extreme Programming (XP).It requires that programmers do not write any production code until they have first written a unit test.
    106. What is Test Harness?
    A program or test tool used to execute a tests. Also known as a Test Driver.
    107. What is Test Plan?
    A document describing the scope, approach, resources, and schedule of intended testing activities. It identifies test items, the features to be tested, the testing tasks, who will do each task, and any risks requiring contingency planning.
    108. What is Test Procedure?
    A document providing detailed instructions for the execution of one or more test cases.
    109. What is Test Script?
    Commonly used to refer to the instructions for a particular test that will be carried out by an automated test tool.
    110. What is Test Specification?
    A document specifying the test approach for a software feature or combination or features and the inputs, predicted results and execution conditions for the associated tests.
    111. What is Test Suite?
    A collection of tests used to validate the behavior of a product. The scope of a Test Suite varies from organization to organization. There may be several Test Suites for a particular product for example. In most cases however a Test Suite is a high level concept, grouping together hundreds or thousands of tests related by what they are intended to test.
    112. What is Test Tools?
    Computer programs used in the testing of a system, a component of the system, or its documentation.
    113. What is Thread Testing?
    A variation of 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.
    114. What is Top Down Testing?
    An approach to integration testing where the component at the top of the component hierarchy is tested first, with lower level components being simulated by stubs. Tested components are then used to test lower level components. The process is repeated until the lowest level components have been tested.
    115. What is Total Quality Management?
    A company commitment to develop a process that achieves high quality product and customer satisfaction.
    116. What is Traceability Matrix?
    A document showing the relationship between Test Requirements and Test Cases.
    117. What is Usability Testing?
    Testing the ease with which users can learn and use a product.
    118. What is Use Case?
    The specification of tests that are conducted from the end-user perspective. Use cases tend to focus on operating software as an end-user would conduct their day-to-day activities.
    119. What is Unit Testing?
    Testing of individual software components.
    120. What is Validation?
    The process of evaluating software at the end of the software development process to ensure compliance with software requirements. The techniques for validation is testing, inspection and reviewing.
    121. What is Verification?
    The process of determining whether of not the products of a given phase of the software development cycle meet the implementation steps and can be traced to the incoming objectives established during the previous phase. The techniques for verification are testing, inspection and reviewing.
    122. What is White Box Testing?
    Testing based on an analysis of internal workings and structure of a piece of software. Includes techniques such as Branch Testing and Path Testing. Also known as Structural Testing and Glass Box Testing. Contrast with Black Box Testing. White box testing is used to test the internal logic of the code for ex checking whether the path has been executed once, checking whether the branches has been executed atleast once …..Used to check the structure of the code.
    123. What is Workflow Testing?
    Scripted end-to-end testing which duplicates specific workflows which are expected to be utilized by the end-user.
    124. What’s the difference between load and stress testing ?
    One of the most common, but unfortunate misuse of terminology is treating “load testing” and “stress testing” as synonymous. The consequence of this ignorant semantic abuse is usually that the system is neither properly “load tested” nor subjected to a meaningful stress test. Stress testing is subjecting a system to an unreasonable load while denying it the resources (e.g., RAM, disc, mips, interrupts, etc.) needed to process that load. The idea is to stress a system to the breaking point in order to find bugs that will make that break potentially harmful. The system is not expected to process the overload without adequate resources, but to behave (e.g., fail) in a decent manner (e.g., not corrupting or losing data). Bugs and failure modes discovered under stress testing may or may not be repaired depending on the application, the failure mode, consequences, etc. The load (incoming transaction stream) in stress testing is often deliberately distorted so as to force the system into resource depletion. Load testing is subjecting a system to a statistically representative (usually) load. The two main reasons for using such loads is in support of software reliability testing and in performance testing. The term ‘load testing’ by itself is too vague and imprecise to warrant use. For example, do you mean representative load,’ ‘overload,’ ‘high load,’ etc. In performance testing, load is varied from a minimum (zero) to the maximum level the system can sustain without running out of resources or having, transactions >suffer (application-specific) excessive delay. A third use of the term is as a test whose objective is to determine the maximum sustainable load the system can handle. In this usage, ‘load testing’ is merely testing at the highest transaction arrival rate in performance testing.
    125. What’s the difference between QA and testing?
    QA is more a preventive thing, ensuring quality in the company and therefore the product rather than just testing the product for software bugs? TESTING means ‘quality control’ QUALITY CONTROL measures the quality of a product QUALITY ASSURANCE measures the quality of processes used to create a quality product.
    126. What is the best tester to developer ratio?
    Reported tester: developer ratios range from 10:1 to 1:10. There’s no simple answer. It depends on so many things, Amount of reused code, number and type of interfaces, platform, quality goals, etc. It also can depend on the development model. The more specs, the less testers. The roles can play a big part also. Does QA own beta? Do you include process auditors or planning activities? These figures can all vary very widely depending on how you define ‘tester’ and ‘developer’. In some organizations, a ‘tester’ is anyone who happens to be testing software at the time — such as their own. In other organizations, a ‘tester’ is only a member of an independent test group. It is better to ask about the test labor content than it is to ask about the tester/developer ratio. The test labor content, across most applications is generally accepted as 50%, when people do honest accounting. For life-critical software, this can go up to 80%.
    127. How can new Software QA processes be introduced in an existing organization?
    – A lot depends on the size of the organization and the risks involved. For large organizations with high-risk (in terms of lives or property) projects, serious management buy-in is required and a formalized QA process is necessary. – Where the risk is lower, management and organizational buy-in and QA implementation may be a slower, step-at-a-time process. QA processes should be balanced with productivity so as to keep bureaucracy from getting out of hand. – For small groups or projects, a more ad-hoc process may be appropriate, depending on the type of customers and projects. A lot will depend on team leads or managers, feedback to developers, and ensuring adequate communications among customers, managers, developers, and testers. – In all cases the most value for effort will be in requirements management processes, with a goal of clear, complete, testable requirement specifications or expectations.
    128. What are 5 common problems in the software development process?
    1. poor requirements – if requirements are unclear, incomplete, too general, or not testable, there will be problems. 2. unrealistic schedule – if too much work is crammed in too little time, problems are inevitable. 3. inadequate testing – no one will know whether or not the program is any good until the customer complains or systems crash. 4. features – requests to pile on new features after development is underway; extremely common. 5. miscommunication – if developers don’t know what’s needed or customer’s have erroneous expectations, problems are guaranteed.
    129. What are 5 common solutions to software development problems?
    1. solid requirements – clear, complete, detailed, cohesive, attainable, testable requirements that are agreed to by all players. Use prototypes to help nail down requirements. 2. realistic schedules – allow adequate time for planning, design, testing, bug fixing, re-testing, changes, and documentation; personnel should be able to complete the project without burning out. 3. adequate testing – start testing early on, re-test after fixes or changes, plan for adequate time for testing and bug-fixing. 4. stick to initial requirements as much as possible – be prepared to defend against changes and additions once development has begun, and be prepared to explain consequences. If changes are necessary, they should be adequately reflected in related schedule changes. If possible, use rapid prototyping during the design phase so that customers can see what to expect. This will provide them a higher comfort level with their requirements decisions and minimize changes later on. 5. communication – require walkthroughs and inspections when appropriate; make extensive use of group communication tools – e-mail, groupware, networked bug-tracking tools and change management tools, intranet capabilities, etc.; insure that documentation is available and up-to-date – preferably electronic, not paper; promote teamwork and cooperation; use prototypes early on so that customers’ expectations are clarified.
    130. What is ‘good code’?
    ‘Good code’ is code that works, is bug free, and is readable and maintainable. Some organizations have coding ‘standards’ that all developers are supposed to adhere to, but everyone has different ideas about what’s best, or what is too many or too few rules. There are also various theories and metrics, such as McCabe Complexity metrics. It should be kept in mind that excessive use of standards and rules can stifle productivity and creativity. ‘Peer reviews’, ‘buddy checks’ code analysis tools, etc. can be used to check for problems and enforce standards. For C and C++ coding, here are some typical ideas to consider in setting rules/standards; these may or may not apply to a particular situation: – minimize or eliminate use of global variables. – use descriptive function and method names – use both upper and lower case, avoid abbreviations, use as many characters as necessary to be adequately descriptive (use of more than 20 characters is not out of line); be consistent in naming conventions. – use descriptive variable names – use both upper and lower case, avoid abbreviations, use as many characters as necessary to be adequately descriptive (use of more than 20 characters is not out of line); be consistent in naming conventions. – function and method sizes should be minimized; less than 100 lines of code is good, less than 50 lines is preferable. – function descriptions should be clearly spelled out in comments preceding a function’s code.- organize code for readability. – use whitespace generously – vertically and horizontally – each line of code should contain 70 characters max. – one code statement per line. – coding style should be consistent throughout a program (eg, use of brackets, indentations, naming conventions, etc.) – in adding comments, err on the side of too many rather than too few comments; a common rule of thumb is that there should be at least as many lines of comments (including header blocks) as lines of code. – no matter how small, an application should include documentation of the overall program function and flow (even a few paragraphs is better than nothing); or if possible a separate flow chart and detailed program documentation. – make extensive use of error handling procedures and status and error logging. – for C++, to minimize complexity and increase maintainability, avoid too many levels of inheritance in class hierarchies (relative to the size and complexity of the application). Minimize use of multiple inheritance, and minimize use of operator overloading (note that the Java programming language eliminates multiple inheritance and operator overloading.) – for C++, keep class methods small, less than 50 lines of code per method is preferable. – for C++, make liberal use of exception handlers
    131. What is ‘good design’?
    ‘Design’ could refer to many things, but often refers to ‘functional design’ or ‘internal design’. Good internal design is indicated by software code whose overall structure is clear, understandable, easily modifiable, and maintainable; is robust with sufficient error-handling and status logging capability; and works correctly when implemented. Good functional design is indicated by an application whose functionality can be traced back to customer and end-user requirements. For programs that have a user interface, it’s often a good idea to assume that the end user will have little computer knowledge and may not read a user manual or even the on-line help; some common rules-of-thumb include: – the program should act in a way that least surprises the user – it should always be evident to the user what can be done next and how to exit – the program shouldn’t let the users do something stupid without warning them.
    132. What makes a good test engineer?
    A good test engineer has a ‘test to break’ attitude, an ability to take the point of view of the customer, a strong desire for quality, and an attention to detail. Tact and diplomacy are useful in maintaining a cooperative relationship with developers, and an ability to communicate with both technical (developers) and non-technical (customers, management) people is useful. Previous software development experience can be helpful as it provides a deeper understanding of the software development process, gives the tester an appreciation for the developers’ point of view, and reduce the learning curve in automated test tool programming. Judgment skills are needed to assess high-risk areas of an application on which to focus testing efforts when time is limited.
    133. What makes a good Software QA engineer?
    The same qualities a good tester has are useful for a QA engineer. Additionally, they must be able to understand the entire software development process and how it can fit into the business approach and goals of the organization. Communication skills and the ability to understand various sides of issues are important. In organizations in the early stages of implementing QA processes, patience and diplomacy are especially needed. An ability to find problems as well as to see ‘what’s missing’ is important for inspections and reviews.
    134. What makes a good QA or Test manager?
    A good QA, test, or QA/Test(combined) manager should: – be familiar with the software development process – be able to maintain enthusiasm of their team and promote a positive atmosphere, despite what is a somewhat ‘negative’ process (e.g., looking for or preventing problems) – be able to promote teamwork to increase productivity – be able to promote cooperation between software, test, and QA engineers – have the diplomatic skills needed to promote improvements in QA processes -have the ability to withstand pressures and say ‘no’ to other managers when quality is insufficient or QA processes are not being adhered to – have people judgement skills for hiring and keeping skilled personnel- be able to communicate with technical and non-technical people, engineers, managers, and customers. – be able to run meetings and keep them focused
    135. What’s the role of documentation in QA?
    Critical. (Note that documentation can be electronic, not necessarily paper.) QA practices should be documented such that they are repeatable. Specifications, designs, business rules, inspection reports, configurations, code changes, test plans, test cases, bug reports, user manuals, etc. should all be documented. There should ideally be a system for easily finding and obtaining documents and determining what documentation will have a particular piece of information. Change management for documentation should be used if possible.
    136. What’s the big deal about ‘requirements’?
    One of the most reliable methods of insuring problems, or failure, in a complex software project is to have poorly documented requirements specifications. Requirements are the details describing an application’s externally-perceived functionality and properties. Requirements should be clear, complete, reasonably detailed, cohesive, attainable, and testable. A non-testable requirement would be, for example, ‘user-friendly’ (too subjective). A testable requirement would be something like ‘the user must enter their previously-assigned password to access the application’. Determining and organizing requirements details in a useful and efficient way can be a difficult effort; different methods are available depending on the particular project. Many books are available that describe various approaches to this task. Care should be taken to involve ALL of a project’s significant ‘customers’ in the requirements process. ‘Customers’ could be in-house personnel or out, and could include end-users, customer acceptance testers, customer contract officers, customer management, future software maintenance engineers, salespeople, etc. Anyone who could later derail the project if their expectations aren’t met should be included if possible. Organizations vary considerably in their handling of requirements specifications. Ideally, the requirements are spelled out in a document with statements such as ‘The product shall…..’. ‘Design’ specifications should not be confused with ‘requirements’; design specifications should be traceable back to the requirements. In some organizations requirements may end up in high level project plans, functional specification documents, in design documents, or in other documents at various levels of detail. No matter what they are called, some type of documentation with detailed requirements will be needed by testers in order to properly plan and execute tests. Without such documentation, there will be no clear-cut way to determine if a software application is performing correctly.
    137. What steps are needed to develop and run software tests?
    The following are some of the steps to consider: – Obtain requirements, functional design, and internal design specifications and other necessary documents – Obtain budget and schedule requirements – Determine project-related personnel and their responsibilities, reporting requirements, required standards and processes (such as release processes, change processes, etc.) – Identify application’s higher-risk aspects, set priorities, and determine scope and limitations of tests – Determine test approaches and methods – unit, integration, functional, system, load, usability tests, etc. – Determine test environment requirements (hardware, software, communications, etc.) -Determine testware requirements (record/playback tools, coverage analyzers, test tracking, problem/bug tracking, etc.) – Determine test input data requirements – Identify tasks, those responsible for tasks, and labor requirements – Set schedule estimates, timelines, milestones – Determine input equivalence classes, boundary value analyses, error classes – Prepare test plan document and have needed reviews/approvals – Write test cases – Have needed reviews/inspections/approvals of test cases – Prepare test environment and testware, obtain needed user manuals/reference documents/configuration guides/installation guides, set up test tracking processes, set up logging and archiving processes, set up or obtain test input data – Obtain and install software releases – Perform tests – Evaluate and report results – Track problems/bugs and fixes – Retest as needed – Maintain and update test plans, test cases, test environment, and testware through life cycle
    138. What is ‘configuration management’?
    Configuration management covers the processes used to control, coordinate, and track: code, requirements, documentation, problems, change requests, designs, tools/compilers/libraries/patches, changes made to them, and who makes the changes.
    139. What if the software is so buggy it can’t really be tested at all?
    The best bet in this situation is for the testers to go through the process of reporting whatever bugs or blocking-type problems initially show up, with the focus being on critical bugs. Since this type of problem can severely affect schedules, and indicates deeper problems in the software development process (such as insufficient unit testing or insufficient integration testing, poor design, improper build or release procedures, etc.) managers should be notified, and provided with some documentation as evidence of the problem.
    140. How can it be known when to stop testing?
    This can be difficult to determine. Many modern software applications are so complex, and run in such an interdependent environment, that complete testing can never be done. Common factors in deciding when to stop are: – Deadlines (release deadlines, testing deadlines, etc.)- Test cases completed with certain percentage passed – Test budget depleted – Coverage of code/functionality/requirements reaches a specified point – Bug rate falls below a certain level – Beta or alpha testing period ends
    141. What if there isn’t enough time for thorough testing?
    Use risk analysis to determine where testing should be focused. Since it’s rarely possible to test every possible aspect of an application, every possible combination of events, every dependency, or everything that could go wrong, risk analysis is appropriate to most software development projects. This requires judgement skills, common sense, and experience. (If warranted, formal methods are also available.) Considerations can include: – Which functionality is most important to the project’s intended purpose? – Which functionality is most visible to the user? – Which functionality has the largest safety impact? – Which functionality has the largest financial impact on users? – Which aspects of the application are most important to the customer? – Which aspects of the application can be tested early in the development cycle? – Which parts of the code are most complex, and thus most subject to errors? – Which parts of the application were developed in rush or panic mode? – Which aspects of similar/related previous projects caused problems? – Which aspects of similar/related previous projects had large maintenance expenses? – Which parts of the requirements and design are unclear or poorly thought out? – What do the developers think are the highest-risk aspects of the application? – What kinds of problems would cause the worst publicity? – What kinds of problems would cause the most customer service complaints?- What kinds of tests could easily cover multiple functionalities? – Which tests will have the best high-risk-coverage to time-required ratio?
    142. What can be done if requirements are changing continuously?
    A common problem and a major headache. – Work with the project’s stakeholders early on to understand how requirements might change so that alternate test plans and strategies can be worked out in advance, if possible. – It’s helpful if the application’s initial design allows for some adaptability so that later changes do not require redoing the application from scratch. – If the code is well-commented and well-documented this makes changes easier for the developers.- Use rapid prototyping whenever possible to help customers feel sure of their requirements and minimize changes. – The project’s initial schedule should allow for some extra time commensurate with the possibility of changes.- Try to move new requirements to a ‘Phase 2’ version of an application, while using the original requirements for the ‘Phase 1’ version. – Negotiate to allow only easily-implemented new requirements into the project, while moving more difficult new requirements into future versions of the application. – Be sure that customers and management understand the scheduling impacts, inherent risks, and costs of significant requirements changes. Then let management or the customers (not the developers or testers) decide if the changes are warranted – after all, that’s their job. – Balance the effort put into setting up automated testing with the expected effort required to re-do them to deal with changes. – Try to design some flexibility into automated test scripts. – Focus initial automated testing on application aspects that are most likely to remain unchanged. – Devote appropriate effort to risk analysis of changes to minimize regression testing needs. – Design some flexibility into test cases (this is not easily done; the best bet might be to minimize the detail in the test cases, or set up only higher-level generic-type test plans) – Focus less on detailed test plans and test cases and more on ad hoc testing (with an understanding of the added risk that this entails).
    143. What if the project isn’t big enough to justify extensive testing?
    Consider the impact of project errors, not the size of the project. However, if extensive testing is still not justified, risk analysis is again needed and the same considerations as described previously in ‘What if there isn’t enough time for thorough testing?’ apply. The tester might then do ad hoc testing, or write up a limited test plan based on the risk analysis.
    144. What if the application has functionality that wasn’t in the requirements?
    It may take serious effort to determine if an application has significant unexpected or hidden functionality, and it would indicate deeper problems in the software development process. If the functionality isn’t necessary to the purpose of the application, it should be removed, as it may have unknown impacts or dependencies that were not taken into account by the designer or the customer. If not removed, design information will be needed to determine added testing needs or regression testing needs. Management should be made aware of any significant added risks as a result of the unexpected functionality. If the functionality only effects areas such as minor improvements in the user interface, for example, it may not be a significant risk.
    145. How can Software QA processes be implemented without stifling productivity?
    By implementing QA processes slowly over time, using consensus to reach agreement on processes, and adjusting and experimenting as an organization grows and matures, productivity will be improved instead of stifled. Problem prevention will lessen the need for problem detection, panics and burn-out will decrease, and there will be improved focus and less wasted effort. At the same time, attempts should be made to keep processes simple and efficient, minimize paperwork, promote computer-based processes and automated tracking and reporting, minimize time required in meetings, and promote training as part of the QA process. However, no one – especially talented technical types – likes rules or bureaucracy, and in the short run things may slow down a bit. A typical scenario would be that more days of planning and development will be needed, but less time will be required for late-night bug-fixing and calming of irate customers.
    146. What if an organization is growing so fast that fixed QA processes are impossible?
    This is a common problem in the software industry, especially in new technology areas. There is no easy solution in this situation, other than: – Hire good people – Management should ‘ruthlessly prioritize’ quality issues and maintain focus on the customer – Everyone in the organization should be clear on what ‘quality’ means to the customer
    147. How does a client/server environment affect testing?
    Client/server applications can be quite complex due to the multiple dependencies among clients, data communications, hardware, and servers. Thus testing requirements can be extensive. When time is limited (as it usually is) the focus should be on integration and system testing. Additionally, load/stress/performance testing may be useful in determining client/server application limitations and capabilities. There are commercial tools to assist with such testing.
    148.How can World Wide Web sites be tested?
    Web sites are essentially client/server applications – with web servers and ‘browser’ clients. Consideration should be given to the interactions between html pages, TCP/IP communications, Internet connections, firewalls, applications that run in web pages (such as applets, javascript, plug-in applications), and applications that run on the server side (such as cgi scripts, database interfaces, logging applications, dynamic page generators, asp, etc.). Additionally, there are a wide variety of servers and browsers, various versions of each, small but sometimes significant differences between them, variations in connection speeds, rapidly changing technologies, and multiple standards and protocols. The end result is that testing for web sites can become a major ongoing effort. Other considerations might include: – What are the expected loads on the server (e.g., number of hits per unit time?), and what kind of performance is required under such loads (such as web server response time, database query response times). What kinds of tools will be needed for performance testing (such as web load testing tools, other tools already in house that can be adapted, web robot downloading tools, etc.)? – Who is the target audience? What kind of browsers will they be using? What kind of connection speeds will they by using? Are they intra- organization (thus with likely high connection speeds and similar browsers) or Internet-wide (thus with a wide variety of connection speeds and browser types)? – What kind of performance is expected on the client side (e.g., how fast should pages appear, how fast should animations, applets, etc. load and run)? – Will down time for server and content maintenance/upgrades be allowed? how much? – What kinds of security (firewalls, encryptions, passwords, etc.) will be required and what is it expected to do? How can it be tested? – How reliable are the site’s Internet connections required to be? And how does that affect backup system or redundant connection requirements and testing? – What processes will be required to manage updates to the web site’s content, and what are the requirements for maintaining, tracking, and controlling page content, graphics, links, etc.? – Which HTML specification will be adhered to? How strictly? What variations will be allowed for targeted browsers? – Will there be any standards or requirements for page appearance and/or graphics throughout a site or parts of a site?? – How will internal and external links be validated and updated? how often? – Can testing be done on the production system, or will a separate test system be required? How are browser caching, variations in browser option settings, dial-up connection variabilities, and real-world internet ‘traffic congestion’ problems to be accounted for in testing?- How extensive or customized are the server logging and reporting requirements; are they considered an integral part of the system and do they require testing?- How are cgi programs, applets, javascripts, ActiveX components, etc. to be maintained, tracked, controlled, and tested? – Pages should be 3-5 screens max unless content is tightly focused on a single topic. If larger, provide internal links within the page. – The page layouts and design elements should be consistent throughout a site, so that it’s clear to the user that they’re still within a site. – Pages should be as browser-independent as possible, or pages should be provided or generated based on the browser-type. – All pages should have links external to the page; there should be no dead-end pages. – The page owner, revision date, and a link to a contact person or organization should be included on each page.
    149. How is testing affected by object-oriented designs?
    Well-engineered object-oriented design can make it easier to trace from code to internal design to functional design to requirements. While there will be little affect on black box testing (where an understanding of the internal design of the application is unnecessary), white-box testing can be oriented to the application’s objects. If the application was well-designed this can simplify test design.
    150. What is Extreme Programming and what’s it got to do with testing?
    Extreme Programming (XP) is a software development approach for small teams on risk-prone projects with unstable requirements. It was created by Kent Beck who described the approach in his book ‘Extreme Programming Explained’. Testing (‘extreme testing’) is a core aspect of Extreme Programming. Programmers are expected to write unit and functional test code first – before the application is developed. Test code is under source control along with the rest of the code. Customers are expected to be an integral part of the project team and to help develop scenarios for acceptance/black box testing. Acceptance tests are preferably automated, and are modified and rerun for each of the frequent development iterations. QA and test personnel are also required to be an integral part of the project team. Detailed requirements documentation is not used, and frequent re-scheduling, re-estimating, and re-prioritizing is expected.
    151. Will automated testing tools make testing easier?
    – Possibly. For small projects, the time needed to learn and implement them may not be worth it. For larger projects, or on-going long-term projects they can be valuable. – A common type of automated tool is the ‘record/playback’ type. For example, a tester could click through all combinations of menu choices, dialog box choices, buttons, etc. in an application GUI and have them ‘recorded’ and the results logged by a tool. The ‘recording’ is typically in the form of text based on a scripting language that is interpretable by the testing tool. If new buttons are added, or some underlying code in the application is changed, etc. the application can then be retested by just ‘playing back’ the ‘recorded’ actions, and comparing the logging results to check effects of the changes. The problem with such tools is that if there are continual changes to the system being tested, the ‘recordings’ may have to be changed so much that it becomes very time-consuming to continuously update the scripts. Additionally, interpretation of results (screens, data, logs, etc.) can be a difficult task. Note that there are record/playback tools for text-based interfaces also, and for all types of platforms.- Other automated tools can include: code analyzers – monitor code complexity, adherence to standards, etc. coverage analyzers – these tools check which parts of the code have been exercised by a test, and may be oriented to code statement coverage, condition coverage, path coverage, etc. memory analyzers – such as bounds-checkers and leak detectors. load/performance test tools – for testing client/server and web applications under various load levels. web test tools – to check that links are valid, HTML code usage is correct, client-side and server-side programs work, a web site’s interactions are secure. other tools – for test case management, documentation management, bug reporting, and configuration management.
    152. What’s the difference between black box and white box testing?
    Black-box and white-box are test design methods. Black-box test design treats the system as a “black-box”, so it doesn’t explicitly use knowledge of the internal structure. Black-box test design is usually described as focusing on testing functional requirements. Synonyms for black-box include: behavioral, functional, opaque-box, and closed-box. White-box test design allows one to peek inside the “box”, and it focuses specifically on using internal knowledge of the software to guide the selection of test data. Synonyms for white-box include: structural, glass-box and clear-box. While black-box and white-box are terms that are still in popular use, many people prefer the terms ‘behavioral’ and ‘structural’. Behavioral test design is slightly different from black-box test design because the use of internal knowledge isn’t strictly forbidden, but it’s still discouraged. In practice, it hasn’t proven useful to use a single test design method. One has to use a mixture of different methods so that they aren’t hindered by the limitations of a particular one. Some call this ‘gray-box’ or ‘translucent-box’ test design, but others wish we’d stop talking about boxesaltogether.It is important to understand that these methods are used during the test design phase, and their influence is hard to see in the tests once they’re implemented. Note that any level of testing (unit testing, system testing, etc.) can use any test design methods. Unit testing is usually associated with structural test design, but this is because testers usually don’t have well-defined requirements at the unit level to validate.
    153. What kinds of testing should be considered?
    Black box testing – not based on any knowledge of internal design or code. Tests are based on requirements and functionality. White box testing – based on knowledge of the internal logic of an application’s code. Tests are based on coverage of code statements, branches, paths, conditions.unit testing – the most ‘micro’ scale of testing; to test particular functions or code modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. Not always easily done unless the application has a well-designed architecture with tight code; may require developing test driver modules or test harnesses. incremental integration testing – continuous testing of an application as new functionality is added; requires that various aspects of an application’s functionality be independent enough to work separately before all parts of the program are completed, or that test drivers be developed as needed; done by programmers or by testers. integration testing – testing of combined parts of an application to determine if they function together correctly. The ‘parts’ can be code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to client/server and distributed systems. functional testing – black-box type testing geared to functional requirements of an application; this type of testing should be done by testers. This doesn’t mean that the programmers shouldn’t check that their code works before releasing it (which of course applies to any stage of testing.) system testing – black-box type testing that is based on overall requirements specifications; covers all combined parts of a system. end-to-end testing – similar to system testing; the ‘macro’ end of the test scale; involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate. sanity testing or smoke testing – typically an initial testing effort to determine if a new software version is performing well enough to accept it for a major testing effort. For example, if the new software is crashing systems every 5 minutes, bogging down systems to a crawl, or corrupting databases, the software may not be in a ‘sane’ enough condition to warrant further testing in its current state. regression testing – re-testing after fixes or modifications of the software or its environment. It can be difficult to determine how much re-testing is needed, especially near the end of the development cycle. Automated testing tools can be especially useful for this type of testing. acceptance testing – final testing based on specifications of the end-user or customer, or based on use by end-users/customers over some limited period of time. load testing – testing an application under heavy loads, such as testing of a web site under a range of loads to determine at what point the system’s response time degrades or fails.stress testing – term often used interchangeably with ‘load’ and ‘performance’ testing. Also used to describe such tests as system functional testing while under unusually heavy loads, heavy repetition of certain actions or inputs, input of large numerical values, large complex queries to a database system, etc. performance testing – term often used interchangeably with ‘stress’ and ‘load’ testing. Ideally ‘performance’ testing (and any other ‘type’ of testing) is defined in requirements documentation or QA or Test Plans.usability testing – testing for ‘user-friendliness’. Clearly this is subjective, and will depend on the targeted end-user or customer. User interviews, surveys, video recording of user sessions, and other techniques can be used. Programmers and testers are usually not appropriate as usability testers. install/uninstall testing – testing of full, partial, or upgrade install/uninstall processes. recovery testing – testing how well a system recovers from crashes, hardware failures, or other catastrophic problems. failover testing – typically used interchangeably with ‘recovery testing’security testing – testing how well the system protects against unauthorized internal or external access, willful damage, etc; may require sophisticated testing techniques. compatibility testing – testing how well software performs in a particular hardware/software/operating system/network/etc. environment. exploratory testing – often taken to mean a creative, informal software test that is not based on formal test plans or test cases; testers may be learning the software as they test it. ad-hoc testing – similar to exploratory testing, but often taken to mean that the testers have significant understanding of the software before testing it. context-driven testing – testing driven by an understanding of the environment, culture, and intended use of software. For example, the testing approach for life-critical medical equipment software would be completely different than that for a low-cost computer game. user acceptance testing – determining if software is satisfactory to an end-user or customer. comparison testing – comparing software weaknesses and strengths to competing products. alpha testing – testing of an application when development is nearing completion; minor design changes may still be made as a result of such testing. Typically done by end-users or others, not by programmers or testers. beta testing – testing when development and testing are essentially completed and final bugs and problems need to be found before final release. Typically done by end-users or others, not by programmers or testers. mutation testing – a method for determining if a set of test data or test cases is useful, by deliberately introducing various code changes (‘bugs’) and retesting with the original test data/cases to determine if the ‘bugs’ are detected. Proper implementation requires large computational resources.
    154. Why is it often hard for management to get serious about quality assurance?
    Solving problems is a high-visibility process; preventing problems is low-visibility.This is illustrated by an old parable:In ancient China there was a family of healers, one of whom was known throughout the land and employed as a physician to a great lord. The physician was asked which of his family was the most skillful healer. He replied, “I tend to the sick and dying with drastic and dramatic treatments, and on occasion someone is cured and my name gets out among the lords.””My elder brother cures sickness when it just begins to take root, and his skills are known among the local peasants and neighbors.” “My eldest brother is able to sense the spirit of sickness and eradicate it before it takes form. His name is unknown outside our home.”
    155. Why does software have bugs?
    1. Miscommunication or no communication – as to specifics of what an application should or shouldn’t do (the application’s requirements). 2. Software complexity – the complexity of current software applications can be difficult to comprehend for anyone without experience in modern-day software development. Multi-tiered applications, client-server and distributed applications, data communications, enormous relational databases, and sheer size of applications have all contributed to the exponential growth in software/system complexity. programming errors – programmers, like anyone else, can make mistakes. 3. Changing requirements (whether documented or undocumented) – the end-user may not understand the effects of changes, or may understand and request them anyway – redesign, rescheduling of engineers, effects on other projects, work already completed that may have to be redone or thrown out, hardware requirements that may be affected, etc. If there are many minor changes or any major changes, known and unknown dependencies among parts of the project are likely to interact and cause problems, and the complexity of coordinating changes may result in errors. Enthusiasm of engineering staff may be affected. In some fast-changing business environments, continuously modified requirements may be a fact of life. In this case, management must understand the resulting risks, and QA and test engineers must adapt and plan for continuous extensive testing to keep the inevitable bugs from running out of control. 3. Poorly documented code – it’s tough to maintain and modify code that is badly written or poorly documented; the result is bugs. In many organizations management provides no incentive for programmers to document their code or write clear, understandable, maintainable code. In fact, it’s usually the opposite: they get points mostly for quickly turning out code, and there’s job security if nobody else can understand it (‘if it was hard to write, it should be hard to read’). 4. software development tools – visual tools, class libraries, compilers, scripting tools, etc. often introduce their own bugs or are poorly documented, resulting in added bugs.
    156. How can new Software QA processes be introduced in an existing organization?
    A lot depends on the size of the organization and the risks involved. For large organizations with high-risk (in terms of lives or property) projects, serious management buy-in is required and a formalized QA process is necessary. Where the risk is lower, management and organizational buy-in and QA implementation may be a slower, step-at-a-time process. QA processes should be balanced with productivity so as to keep bureaucracy from getting out of hand. For small groups or projects, a more ad-hoc process may be appropriate, depending on the type of customers and projects. A lot will depend on team leads or managers, feedback to developers, and ensuring adequate communications among customers, managers, developers, and testers. The most value for effort will often be in (a) requirements management processes, with a goal of clear, complete, testable requirement specifications embodied in requirements or design documentation, or in ‘agile’-type environments extensive continuous coordination with end-users, (b) design inspections and code inspections, and (c) post-mortems/retrospectives.
    157. how do the companies expect the defect reporting to be communicated by the tester to the development team. Can the excel sheet template be used for defect reporting. If so what are the common fields that are to be included ? who assigns the priority and severity of the defect
    To report bugs in excel: Sno. Module Screen/ Section Issue detail SeverityPriority Issuestatusthis is how to report bugs in excel sheet and also set filters on the Columns attributes.But most of the companies use the share point process of reporting bugs In this when the project came for testing a module wise detail of project is inserted to the defect management system they are using. It contains following field1. Date2. Issue brief3. Issue description (used for developer to regenerate the issue)4. Issue status ( active, resolved, onhold, suspend and not able to regenerate)5. Assign to (Names of members allocated to project)6. Priority (High, medium and low)7. severity (Major, medium and low)
    158. What are the tables in testplans and testcases?
    Test plan is a document that contains the scope, approach, test design and test strategies. It includes the following:-1. Test case identifier2. Scope3.Features to be tested4. Features not to be tested.5. Test strategy.6. Test Approach7. Test Deliverables8. Responsibilities.9 Staffing and Training10.Risk and Contingencies11. ApprovalWhile A test case is a noted/documented set of steps/activities that are carried out or executed on the software in order to confirm its functionality/behavior to certain set of inputs.
    159. What are the table contents in testplans and test cases?
    Test Plan is a document which is prepared with the details of the testing priority. A test Plan generally includes: 1. Objective of Testing2. Scope of Testing3. Reason for testing4. Timeframe5. Environment6. Entrance and exit criteria7. Risk factors involved8. Deliverables
    160. What automating testing tools are you familiar with?
    Win Runner , Load runner, QTP , Silk Performer, Test director, Rational robot, QA run.
    161. How did you use automating testing tools in your job?
    1. For regression testing2. Criteria to decide the condition of a particular build3. Describe some problem that you had with automating testing tool.The problem of winrunner identifying the third party controls like infragistics control.
    162. How do you plan test automation?
    1. Prepare the automation Test plan2. Identify the scenario3. Record the scenario4. Enhance the scripts by inserting check points and Conditional Loops5. Incorporated Error Handler6. Debug the script7. Fix the issue8. Rerun the script and report the result.
    163. Can test automation improve test effectiveness?
    Yes, Automating a test makes the test process:1.Fast2.Reliable3. Repeatable4.Programmable5.Reusable6.Comprehensive6. What is data – driven automation?Testing the functionality with more test cases becomes laborious as the functionality grows. For multiple sets of data (test cases), you can execute the test once in which you can figure out for which data it has failed and for which data, the test has passed. This feature is available in the WinRunner with the data driven test where the data can be taken from an excel sheet or notepad.
    164. What are the main attributes of test automation?
    software test automation attributes :Maintainability – the effort needed to update the test automation suites for each new releaseReliability – the accuracy and repeatability of the test automationFlexibility – the ease of working with all the different kinds of automation test wareEfficiency – the total cost related to the effort needed for the automationPortability – the ability of the automated test to run on different environmentsRobustness – the effectiveness of automation on an unstable or rapidly changing systemUsability – the extent to which automation can be used by different types of users
    165. Does automation replace manual testing?
    There can be some functionality which cannot be tested in an automated tool so we may have to do it manually. therefore manual testing can never be replaced. (We can write the scripts for negative testing also but it is hectic task).When we talk about real environment we do negative testing manually.
    166. How will you choose a tool for test automation?
    choosing of a tool depends on many things …1. Application to be tested2. Test environment3. Scope and limitation of the tool.4. Feature of the tool.5. Cost of the tool.6. Whether the tool is compatible with your application which means tool should be able to interact with your application7. Ease of use
    167. How you will evaluate the tool for test automation?
    We need to concentrate on the features of the tools and how this could be beneficial for our project. The additional new features and the enhancements of the features will also help.
    168. What are main benefits of test automation?
    FAST ,RELIABLE,COMPREHENSIVE,REUSABLE
    169. What could go wrong with test automation?
    1. The choice of automation tool for certain technologies 2. Wrong set of test automated
    170. How you will describe testing activities?
    Testing activities start from the elaboration phase. The various testing activities are preparing the test plan, Preparing test cases, Execute the test case, Log the bug, validate the bug & take appropriate action for the bug, Automate the test cases.
    171. What testing activities you may want to automate?
    Automate all the high priority test cases which needs to be executed as a part of regression testing for each build cycle.
    172. Describe common problems of test automation.
    The common problems are:1. Maintenance of the old script when there is a feature change or enhancement2. The change in technology of the application will affect the old scripts
    173. What types of scripting techniques for test automation do you know?
    5 types of scripting techniques:LinearStructuredSharedData DrivenKey Driven
    174. What are principles of good testing scripts for automation?
    1. Proper code guiding standards2. Standard format for defining functions, exception handler etc3. Comments for functions4. Proper errorhandling mechanisms5. The appropriate synchronisation techniques18. What tools are available for support of testing during software development life cycle?Testing tools for regression and load/stress testing for regression testing like, QTP, load runner, rational robot, winrunner, silk, testcomplete, Astra are available in the market. -For defect tracking BugZilla, Test Runner are available.
    175. Can the activities of test case design be automated?
    As I know it, test case design is about formulating the steps to be carried out to verify something about the application under test. And this cannot be automated. However, I agree that the process of putting the test results into the excel sheet.
    176. What are the limitations of automating software testing?
    Hard-to-create environments like “out of memory”, “invalid input/reply”, and “corrupt registry entries” make applications behave poorly and existing automated tools can’t force these condition – they simply test your application in “normal” environment.
    177. What skills needed to be a good test automator?
    1.Good Logic for programming.2. Analytical skills.3.Pessimestic in Nature.
    178. How to find that tools work well with your existing system?
    1. Discuss with the support officials2. Download the trial version of the tool and evaluate3. Get suggestions from people who are working on the tool
    179. Describe some problem that you had with automating testing tool
    1. The inability of winrunner to identify the third party control like infragistics controls2. The change of the location of the table object will cause object not found error.3. The inability of the winrunner to execute the script against multiple languages
    180. What are the main attributes of test automation?
    Maintainability, Reliability, Flexibility, Efficiency, Portability, Robustness, and Usability – these are the main attributes in test automation.
    181. What testing activities you may want to automate in a project?
    Testing tools can be used for :* Sanity tests(which is repeated on every build),* stress/Load tests(U simulate a large no of users, which is manually impossible) &* Regression tests(which are done after every code change)
    182. How to find that tools work well with your existing system?
    To find this, select the suite of tests which are most important for your application. First run them with automated tool. Next subject the same tests to careful manual testing. If the results are coinciding you can say your testing tool has been performing.
    183. How will you test the field that generates auto numbers of AUT when we click the button ‘NEW” in the application?
    We can create a textfile in a certain location, and update the auto generated value each time we run the test and compare the currently generated value with the previous one will be one solution.
    184. How will you evaluate the fields in the application under test using automation tool?
    We can use Verification points(rational Robot) to validate the fields .Ex.Usingobjectdata, objectdata properties VP we can validate fields.
    185. Can we perform the test of single application at the same time using different tools on the same machine?
    No. The Testing Tools will be in the ambiguity to determine which browser is opened by which tool.
    186. Difference between Web application Testing and Client Server Testing. State the different types for Web application Testing and Client Server Testing types?
    which winrunner 7.2 version compatible with internet explorer, firefox
    187. What is ‘configuration management’?
    Configuration management is a process to control and document any changes made during the life of a project. Revision control, Change Control, and Release Control are important aspects of Configuration Management.
    188. How to test the Web applications?
    The basic difference in webtesting is here we have to test for URL’s coverage and links coverage. Using WinRunner we can conduct webtesting. But we have to make sure that Webtest option is selected in “Add in Manager”. Using WR we cannot test XML objects.
    189. What are the problems encountered during the testing the application compatibility on different browsers and on different operating systems
    Font issues, alignment issues
    190. How exactly the testing the application compatibility on different browsers and on different operating systems is done
    Please submit Your Suggestion to our forum at http://www.fyicenter.com
    191. How testing is proceeded when SRS or any other document is not given?
    If SRS is not there we can perform Exploratory testing. In Exploratory testing the basic module is executed and depending on its results, the next plan is executed.
    192. How do we test for severe memory leakages ?
    By using Endurance Testing . Endurance Testing means checking for memory leaks or other problems that may occur with prolonged execution.
    193. What is the difference between quality assurance and testing?
    Quality assurance involves the entire software development process and testing involves operation of a system or application to evaluate the results under certain conditions. QA is oriented to prevention and Testing is oriented to detection.
    194. Why does software have bugs?
    1.miscommunication2.programming errors3.time pressures.4.changing requirements5.software complexity
    195. How do u do usability testing, security testing, installation testing, ADHOC, safety and smoke testing?
    Please submit Your Suggestion to our forum at http://www.fyicenter.com
    196. What is memory leaks and buffer overflows ?
    Memory leaks means incomplete deallocation – are bugs that happen very often. Buffer overflow means data sent as input to the server that overflows the boundaries of the input area, thus causing the server to misbehave. Buffer overflows can be used.
    197. What are the major differences between stress testing,load testing,Volume testing?
    Stress testing means increasing the load ,and checking the performance at each level. Load testing means at a time giving more load by the expectation and checking the performance at that level. Volume testing means first we have to apply initial.
    198. What is Exhaustive Testing?
    Testing which covers all combinations of input values and preconditions for an element of the software under test.
    199. What is Functional Decomposition?
    A technique used during planning, analysis and design; creates a functional hierarchy for the software.
    200. What is Functional Specification?
    A document that describes in detail the characteristics of the product with regard to its intended features
——————————————————————————————————————————————————————————————————————————
  1. Differentiate between QA and QC?
QA:
It is process oriented
It involve in entire process of software development.
Prevention oriented.
QC:
It is product oriented.
Work to examine the quality of product.
Deduction oriented.

  1. What is a bug?
A computer bug is an error, flaw, mistake, failure, or fault in a computer program that prevents it from working correctly or produces an incorrect result.

  1. What is a test case?
Test case is set of input values, execution preconditions, expected results and execution
Post conditions, developed for a particular objective or test conditions, such as to exercise a particular program path or to verify compliance with a specific requirement.

  1. What is the purpose of test plan in your project?
Test plan document is prepared by the test lead, it contains the contents like introduction, objectives, test strategy, scope, test items, program modules user procedures, features to be tested features not to tested approach, pass or fail criteria, testing process, test deliverables,testing,tasks,responsibilities,resources,schedule,environmental requirements, risks & contingencies, change management procedures, plan approvals, etc all these things help a test manager understand the testing he should do & What he should follow for testing that particular project.

  1. When the relationships occur between tester and developer?
Developer is the one who sends the application to the tester by doing all the necessary code in the application and sends the marshal id to the tester. The tester is the one who gives all the input/output and checks whether he is getting req. output or not. A developer is the one who works on inside interfacing where as the tester is the one who works on outside interfacing

  1. When testing will starts in a project?
The testing is not getting started after the coding. After release the build the testers perform the smoke test. Smoke test is the first test which is done by the testing team. This is according to the testing team. But, before the releasing of a build the developers will perform the unit testing.

  1. If a bug has high severity then usually that is treated as high priority, then why do priority given by test engineers/project managers and severity given by testers?
High severity bugs affects the end users ….testers tests an application with the users point of view, hence it is given as high severity. High priority is given to the bugs which affects the production. Project managers assign a high priority based on production point of view.

  1. What is the difference between functional testing and regression testing
Functional testing is a testing process where we test the functionality/behavior of each functional component of the application…i.e. minimize button, transfer button, links etc. i.e we check what is each component doing in that application…
Regression testing is the testing the behavior of the application of the unchanged areas when there is a change in the build. i.e we check whether the changed requirement has altered the behavior of the unchanged areas. the impacted area may be the whole of the application or
Some part of the application…

  1. Do u know about integration testing, how do u integrate diff modules?
Integration testing means testing an application to verify the data flows between the modules. For example, when you are testing a bank application, in account balance it shows the
100$ as the available balance. But in database it shows the 120$. Main thing is “integration done by the developers and integration testing done by the testers”

  1. do u know about configuration management tool, what is the purpose of maintaining all the documents in configuration management tool?
It is focused primarily on maintaining the file changes in the history.
Documents are subjected to change for ex: consider the Test case document.
Initially you draft the Test cases document and place it in Version control tool(Visual Source Safe for ex).Then you send it for Peer Review .They will provide some comments and that document will be saved in VSS again. Similarly the document undergoes changes and all the changes history will be maintained in Version control.
It helps in referring to the previous version of a document.
Also one person can work on a document (by checking out) at a time.
Also it keeps track that has done the changes, time and date.
Generally all the Test Plan, Test cases, Automation design docs are placed in VSS.
Proper access rights needs to be given so that the documents don’t get deleted or modified.

  1. How you test database and explain the procedure?
Database Testing is purely done based on the requirements. You may generalize a few features but they won’t be complete. In general we look at
  1. Data Correctness (Defaults)
  2. Data Storage/Retrieval
  3. Database Connectivity (across multiple platforms)
  4. Database Indexing
  5. Data Integrity
  6. Data Security

  1. Suppose if you press a link in yahoo shopping site in leads to some other company website? How to test if any problem in linking from one site to another site?
1) First i will check whether the mouse cursor is turning into hand icon or not?
2) I will check the link is highlighting when i place the cursor on the link or not?
3) The site is opening or not?
4) If the site is opening then i will check is it opening in another window or the same window that the link itself exits (to check user-friendliness of the link)
5) How fast that website is opening?
6) Is the correct site is opening according to the link?
7) All the items in the site are opening or not?
8) All other sub links are opening or not?

  1. What are the contents of FRS?
F → Function Behaviors
R → Requirements (Outputs) of the System that is defined.
S → Specification (How, What, When, Where, and Way it behavior’s.
FRS → Function Requirement Specification.

This is a Document which contains the Functional behavior
of the system or a feature. This document is also known as EBS External Behavior Specification – Document. Or EFS External Function Specification.

  1. What is meant by Priority and severity?
Priority means “Importance of the defect w.r.t customer requirement”
Severity means “Seriousness of the defect w.r.t functionality”

  1. What is meant by Priority and severity?
Severity:   
  1. This is assigned by the Test Engineer
  2. This is to say how badly the deviation that is occurring is affecting the other modules of the build or release.
Priority:
  1. This is assigned by the Developer.
  2. This is to say how soon the bug as to be fixed in the main code, so that it pass the basic requirement.
E.g., the code is to generate some values with some valid input conditions. The priority will be assigned so based on the following conditions:
a> It is not accepting any value
b> It is accepting value but output is in non-defined format (say Unicode Characters).
A good example i used some Unicode characters to generate a left defined arrow, it displayed correctly but after saving changes it gave some address value from the
Stack of this server. For more information mail me i will let you know.

  1. Give me some example for high severity and low priority defect?
If suppose the title of the particular concern is not spelled correctly, it would give a negative impact.eg ICICC is spelled as a title for the project of the concern ICICI. Then it is a high severity, low priority defect.

  1. What is basis for test case review?
The main basis for the test case review is
  1. Testing techniques oriented review
  2. Requirements oriented review
  3. Defects oriented review.

  1. What are the contents of SRS documents?
Software requirements specifications and Functional requirements specifications.

  1. What is difference between the Web application testing and Client Server testing?
Testing the application in intranet (without browser) is an example for client -server.(The company firewalls for the server are not open to outside world. Outside people cannot access the application.)So there will be limited number of people using that application.
Testing an application in internet (using browser) is called web testing. The application which is accessible by numerous numbers around the world (World Wide Web.)
So testing web application, apart from the above said two testing’s there are many other testing’s to be done depending on the type of web application we are testing.
If it is a secured application (like banking site- we go for security testing etc.)
If it is an ecommerce testing application we go for Usability etc. Testing’s.

  1. Explain your web application architecture?
Web application is tested in 3 phases
  1. Web tier testing –> browser compatibility
  2. Middle tier testing –> functionality, security
  3. Data base tier testing –> database integrity, contents

22.suppose the product/application has to deliver to client at 5.00PM,At that time you or your team member caught a high severity defect at 3PM.(Remember defect is high severity)But the client is cannot wait for long time. You should deliver the product at 5.00Pm exactly. Then what is the procedure you follow?

The bug is high severity only so we send the application to the client and find out the severity is priority or not. If its priority then we ask him to wait.
Here we found defects/bugs in the last minute of the delivery or release date
Then we have two options
  1. Explain the situation to client and ask some more time to fix the bug.
  2. If the client is not ready to give some time then analyze the impact of defect/bug and try to find workarounds for the defect and mention these issues   in the release notes as known issues or known limitations or known bugs.  Here the workaround means remedy process to be followed to overcome the defect effect.
  3. Normally this known issues or known limitations (defects) will be fixed in next version or next release of the software

  1. Give me examples for high priority and low severity defects?
Suppose in one banking application there is one module ATM Facility. In that ATM facility whenever we are depositing/withdrawing money it is not showing any conformation message but actually at the back end it is happening properly without any mistake means only missing of message. In this case as it is happening properly so there is nothing wrong with the application but as end user is not getting any conformation message so he/she will be confuse for this. So we can consider this issue as HIGH Priority but LOW Severity defects..

  1. Explain about Bug life cycle?
1) Tester->
2) Open defect->
3) Send to developer
4) ->if accepted moves to step5 else sends the bug to tester gain
5) Fixed by developer ->
6) Regression testing->
7) No problem inbuilt and signoff
8) ->if problem in built reopen the issue send to step3

  1. How can you report the defect using excel sheet?
To report the defect using excel sheet
Mention    :    The Feature that been effected.
Mention    :    Test Case ID (Which fail you can even mention any other which are              dependency on this bug)
Mention    :    Actual Behavior
Mention    :    Expected Behavior as mentioned in Test Case or EFS or EBS or SRS document                                                                                     with section
Mention    :    Your Test Setup used during Testing
Mention    :    Steps to Re-Produce the bug
Mention    :    Additional Info
Mention    :    Attach a Screen Shot if it is a GUI bug
Mention    :    Which other features it is blocking because of this bug that you are unable to
Execute the test cases.
Mention    :    How much time you took to execute that test case or follow that specific TC
Which leaded to bug?

  1. If you have executed 100 test cases ,every test case passed but apart from these test case you found some defect for which test case is not prepared, then how you can report the bug?
While reporting this bug into bug tracking tool you will generate the test case I mean put the steps to reproduce the bug.

  1. What is the difference between web based application and client server application
The basic difference between web based application & client server application is that the web application are 3 tiers & client based are 2 tiers. In web based changes are made at one place & it is reflected on other layers also whereas client based separate changes need be installed on client machine also.

  1. What is test plan? And can you tell the test plan contents?
Test plan is a high level document which explains the test strategy, time lines and available resources in detail. Typically a test plan contains:
-Objective
-Test strategy
-Resources
-Entry criteria
-Exit criteria
-Use cases/Test cases
-Tasks
-Features to be tested and not tested
-Risks/Assumptions.

  1. How many test cases can you write per a day, an average figure?
Complex test cases 4-7 per day
Medium test cases 10-15 per day
Normal test cases 20-30 per day

  1. Who will prepare FRS (functional requirement documents)?
What is the important of FRS?
The Business Analyst will prepare the FRS.
Based on this we are going to prepare test cases.
It contains
  1. Overview of the project
  2. Page elements of the Application (Filed Names)
  3. Proto type of the application
  4. Business rules and Error States
  5. Data Flow diagrams
  6. Use cases contains Actor, Actions and System Response

  1. How you can decide the number of test cases is enough for testing the given module?
The developed test cases are covered all the functionality of the application we can say test cases are enough. If u know the functionality covered or not u can use RTM (Requirement Traceability Matrix)
  1. What is the difference between Retesting and Data Driven Testing?
Retesting: It is manual process in which application will be tested with entire new set of data.
Data Driven Testing(DDT)-It is a Automated testing process in which application is tested with multiple test data.DDT is very easy procedure than retesting because the tester should sit and need to give different new inputs manually from front end and it is very tedious and boring Procedure.

  1. What is regression testing?
After the Bug fixed, testing the application whether the fixed bug is affecting remaining functionality of the application or not. Majorly in regression testing Bug fixed module and it’s
Connected modules are checked for their integrity after bug fixation.

  1. How do u test web application?
Web application testing
Web application should have the following features like
  1. Attractive User Interface (logos, fonts, alignment)
  2. High Usability options
  3. Security features (if it has login feature)
  4. Database (back end).
  5. Performance (appearing speed of the application on client system)
  6. Able to work on different Browser (Browser compatibility), O.S compatibility (technical led called as portability)
  7. Broken link testing………etc
So we need to follow out the following test strategy.
  1. Functionality Testing
  2. Performance Testing (Load, volume, Stress, Scalability)
  3. Usability Testing
  4. User Interface Testing (colors, fonts, alignments…)
  5. Security Testing
  6. Browser compatibility Testing (different versions and different browser)
  7. Broken link and Navigation Testing
  8. Database (backend) Testing (data integrity)
  9. Portability testing (Multi O.s Support)….etc

  1. How do you perform regression testing, means what test cases you select for regression?
Regression testing will be conducted after any bug fixed or any functionality changed.
During defect fixing procedure some part of coding may be changed or functionality may be manipulated. In this case the old test cases will be updated or completely re written
According to new features of the application where bug fixed area. Here possible areas are old test cases will be executed as usual or some new test cases will be added to existing test cases or some test cases may be deleted.

  1. What are the client side scripting languages and server side scripting languages?
Client side scripting languages are
Java script, Vb Script, PHP…etc
Server side Scripting languages are
Perl, JSP, ASP, PHP…etc
Client side scripting languages are useful to validate the inputs or user actions from user side or client side.
Server side Scripting languages are to validate the inputs at server side.
These scripting languages provide security for the application. And also provides dynamic nature to web or client server application
Client side scripting is good because it won’t send the unwanted input’s to server for validation. From frontend itself it validated the user inputs and restricts the user activities and guides him

  1. If a very low defect (user interface) is detected by u and the developer not comprising with that defect what will u do?
User interface defect is a high visibility defect and easy to reproduce.
Follow the below procedure
  1. Reproduce the defect
  2. Capture the defect screen shots
  3. Document the proper inputs that you are used to get the    defect in the defect report
  4. Send the defect report with screen shots, i/puts and procedure for defect reproduction.
Before going to this you must check your computer hard ware configuration that is same as developer system configuration. And also check the system graphic drivers are properly
Installed or not. If the problem in graphic drivers the User interface error will come.
So first check your side if it is correct from your side then report the defect by following the above method.

  1. if u r only person in the office and client asked u for some changes and u did not get what the client asked for what will u do?
One thing here is very important. Nobody will ask test engineer to change software that is
not your duty, even if it is related to testing and anybody is not there try to listen carefully if you are not understand ask him again and inform to the corresponding people immediately.
Here the client need speedy service, we (our company) should not get any blame from customer side.

  1. How to get top two salaries from employee tables
Select * from EMP e where 2>= (select count (*) from EMP e where sal>e.sal) order by desc sal.

  1. How many Test-Cases can be written for the calculator having 0-9 buttons, Add, Equal to buttons? The test cases should be focused only on add-functionality but mot GUI. What are those test-cases?
Test-Cases for the calculator
so here we have 12 buttons totally 0,1,2,3,4,5,6,7,8,9,ADD,Equalto -12 buttons
here u can press at least 4 buttons at a time minimum for example   0+1= for zero u should press ‘zero’ labeled button for plus u should press ‘+’ labeled button for one  u should press ‘one’  labeled button for equal to u should press ‘equal to’  labeled button 0+1=here + and = positions will not vary so first number position can be varied from 0 to 9 i.e from permutation and combinations u can fill that space in 10 ways in the same way second number position  can be varied from 0 to 9 i.e from permutation and combinations u can fill that space in 10 ways
Total number of possibilities are =10×10=100
This is exhaustive testing methodology and this is not possible in all cases.
In mathematics we have one policy that the function satisfies the starting and ending values of a range then it can satisfy for entire range of values from starting to ending.
then we check the starting conditions i.e one test case for ‘0+0=’ (expected values you know that is ‘0’) then another test case for ‘9+9='(expected values you know that is ’18’) only two test cases are enough to test the calculator functionality.

  1. What is positive and negative testing explains with example?
Positive Testing – testing the system by giving the valid data.
Negative Testing – testing the system by giving the Invalid data.
For Ex, an application contains a textbox and as per the user’s Requirements the textbox should accept only Strings. By providing only String as input data to the textbox & to check whether its working properly or not means it is Positive Testing. If giving the input other than String means it is negative Testing.

  1. How will you prepare Test plan. What are the techniques involved in preparing the Test plan.
Test plan means planning for the release. This includes Project background
Test Objectives: Brief overview and description of the document
Test Scope: setting the boundaries
Features being tested (Functionalities)
Hardware requirements
Software requirements
Entrance Criteria (When to start testing):
Test environment established, Builder received from developer, Test case prepared and reviewed.
Exit criteria (when to stop testing):
All bug status cycle are closed, all functionalities are tested, and all high and medium bugs are resolved.
Project milestones: dead lines

  1. What is the Defect Life Cycle?
Defect life cycle is also called as bug life cycle. It has 6stages namely
  1. New: found new bug
  2. Assigned: bug assigned to developer
  3. Open: developer is fixing the bug
  4. Fixed: developer has fixed the bug
  5. Retest: tester retests the application
  6. closed/reopened: if it is ok tester gives closed status else he reopens and sends back to developer.

  1. Explain about metrics Management?
Metrics: is nothing but a measurement analysis. Measurement analysis and Improvement is one of the process areas in CMM I L2.

  1. What is performance Testing and Regression Testing?
Performance Testing:-testing the present working condition of the product
Regression Testing:-Regression Testing is checking for the newly added functionality causing any errors in terms of functionality and the common functionality should be stable
In the latest and the previous versions

  1. How do you review test case?? Type of Review…
Types of reviewing test cases depend upon company standards, viz..,
Peer review, team lead review, project manager review.
Sometimes client may also review the test cases reg what is approach following for project

  1. In which way tester get Build a, Build B, Build Z of an application, just explain the process…
After preparation of test cases project manager will release software release note in that Document there will be URL path of the website link from that we will receive
The build In case of web server projects, you will be provided with an URL or a 92.168. ***. *** (Web address) which will help you access the project using a browser from your system.

In case of Client server, the build is placed in the VSS (Configuration tool) which will help you get the .exe downloaded to your computer.

  1. Apart from bug reporting what is your involvement in project life cycle?
As a Test engineer we design test cases, prepare test cases Execute Test cases, track the bugs, analyze the results report the bugs. Involved in regression testing, performance of system testing system integration testing at last preparation of Test summary Report

  1. Contents of test report
There are two documents, which should be prepared at particular phase.
  1. Test Results document.
  2. Test Report document.
Test Results doc will be prepared at the phase of each type of Testing like FULL FUNCTIONAL TEST PASS,REGRESSION TEST PASS, and SANITY TEST PASS etc…Test case execution against
The application. Once you prepared this doc, we will send the doc to our TL and PM. By seeing the Test Results doc , TL will come to know the coverage part of the test case. Here I Am giving you the contents used in the Test Results doc.

  1. Build No
  2. Version Name
  3. Client OS
  4. Feature set
  5. Main Feature
  6. Defined Test cases on each feature.
  7. QA engineer Name
  8. Test cases executed.(Includes pass and fail)
  9. Test cases on HOLD (Includes blocking test cases and deferred Test cases)
  10. Covereage Report (Which includes the coverage ratings in % ,like % of test cases covered,% of test cases failed)

Coming to Test report, generally we will prepare Test report, once we rolled out the product to our client. This document will be prepared by TL and delivered to the client. Mainly, this document describes the what we have done in the project, achievements we have reached, our
Learning’s in throughout the project etc…The other name for Test report is Project Closure Report and we will summarize the all the activities, which have taken place in throughout the project. Here I am giving you the contents covered in the Test Report.
  1. Test Environment (Should be covered the OS, Application or web servers, Machine names, Database, etc…)
2.Test Methods(Types of Tests, we have done in the project like Functional Testing, Platform Testing, regression Testing, etc..
  1. Major areas Covered.
  2. Bug Tracking Details. (Includes inflow and outflow of the bus in our delivered project)
  3. Work schedule (When we start the testing and we finished)
  4. Defect Analysis
6.1 Defects logged in different types of tests like Functional Test, regression Test as per area wised.
6.2 State of the Defects at end of the Test cycle.
6.3 Root cause analysis for the bugs marked as NOT A BUG.
  1. QA observations or learning’s through the life cycle.

  1. Write high level test cases
Write all the test cases under high level TC, which can be covered the main functionalities like
Creation, edition, deletion, etc….as per prescribed in the screen.
Write all the test cases under low level TC, which can be covered the screen, like input fields are displayed as per the requirements, buttons are enabled or disabled, and test case for low priority functionalities.
Example a screen contains two edit boxes login and password and a post buttons OK and Reset and check box for the label “Remember my password”. Now let us write high level TC
And low level test cases.

HIGH LEVEL TC
  1. Verify that User is able to login with valid login and valid password.
  2. Verify that User is not able to login with invalid login and valid password.
Etc…
..
  1. Verify that Reset button clears the filled screen.
  2. Verify that a pop up message is displayed for blank login.
Etc…
Etc…

LOW LEVEL TC
  1. Verify that after launching the URL of the application below fields are displays in the screen.
  2. Login Name 2.Password.3.OK BUTTON 4.RESET button etc.
  3. Check box, provided for the label “remember my pwd” is unchecked.
  4. Verify that OK button should be disabled before selecting login and password fields.
  5. Verify that OK button should ne enabled after selecting login and password.
  6. Verify that User is able to check the check box, provided for the label “remember my pwd”.
Etc…
In this way, we can categorize all the test cases under HIGH LEVEL and LOW LEVEL.

  1. What is test scenario?
Test scenario will be framed on basis of the requirement, which need to be checked. For that, we will frame set of test cases, in other terms, we can say all the conditions, which can be determined the testing coverage against business requirement.
Please see the below example, which is exactly matched to my explanation.
As we know all most all the application are having login screen, which contains login name and password. Here is the test scenario for login screen.
Scenario: USER’S LOGIN
Conditions to be checked to test the above scenario:
—————————————————-
  1. Test login field and Password field’s individually.
  2. Try to login with valid login and valid password.
  3. Try to login with invalid login and valid password etc.

  1. What is build duration?
it is a tine gap between old version build and new version build  in new version build some new extra features are added

  1. What is test deliverables?
Test deliverables are nothing but documents preparing after testing like test plan document  test case template bug report template Test deliverables will be delivered to the client not only for the completed  activities ,but also for the activities, which we are implementing for the better productivity.(As per the company’s standards).Here I am giving you some of the Test deliverables in my project.
  1. QA Test Plan
  2. Test case Docs
  3. QA Test plan, if we are using Automation.
  4. Automation scripts
  5. QA Coverage Matrix and defect matrix.
  6. Traceability Matrix
  7. Test Results doc
  8. QA Schedule doc (describes the deadlines)
  9. Test Report or Project Closure Report.(Prepared once we rolled out the project to client)
  10. Weekly status report (sent by PM to the client)
  11. Release Notes.

54.Wat is your involvement  in test plan
Test lead is involved in preparing test plan test engineers are no way related in preparing test plan role TE is test case design and execution and bug tracking and reporting them generally TL is involved in preparation of the Test Plan. But it is not mandatory only TL will take main part in the preparation of the TP. Test engineer can suggest to TL, if he(or) she has good understanding on project and resources, if he or she has more exp with the project, if TL is wrongly given deadlines. If your suggestions are valid,   TL will incorporate all of them to the Test Plan. But in most of the companies Test engineers are just audience.

  1. Which test cases are not to be automated?
All the test cases which are related to a feature of the product, that keeps on changing (there are always some or the other enhancements in it). Frequent enhancements may change the UI, add/remove few controls. Hence such cases, if automated, would involve lot of a intendance

  1. If a project is long term project, requirements are also changes then test plan will change or not? Why
Yes. Definitely. If requirement changes, the design documents, specifications (for that particular module which implements the requirements) will also change. Hence the test plan would also need to be updated. This is because “Resource Allocation” is one section in the test
Plan. We would need to write new test cases, review, and execute it. Hence resource allocation would have to be done accordingly. As a result the Test plan would change

  1. Explain VSS
Virtual Source Safe:
After completion of all phases from development side developer store the code in development folder of VSS, Testing team copying code from that folder to testing folder, after completing above phages from testing, testers put the build in base line folder. It is version control Tool
Mainly useful to developer, to storing code and maintains version Copying a code from VSS By developer is called CHECK-IN Upload the code in to VSS is called CHECK-OUT.

  1. Who will assign severity & priority?
The tester/dev should give the priority based on severity of the bug
Severity means: is the impact of the bug on the app. i.e seriousness of the bug in terms of the functionality.
Priority means: is how soon it should get fixed i.e importance of the bug in terms of customer

  1. What is the Difference between Stub Testing and Driver Testing?
Stub testing:
In top down approach, a core module is developed. to test that core module, small dummy modules r used. so stubs r small dummy modules that test the core module.
Driver testing:
In bottom up approach, small modules r developed. to test them a dummy core module called driver is developed.

  1. What is a “Good Tester”?
Is one who tries to break the developers software and in a position to venture the bugs. So that at least 80% bugs free software can deliver.

  1. What is cookie And Session testing?
A small text file of information that certain Web sites attach to a user’s hard drive while the user is browsing the Web site. A Cookie can contain information such as user ID, user preferences, archive shopping cart information, etc. Cookies can contain Personally Identifiable
Information. Session is a connection between a server and client.

  1. How would u do performance testing manually for web site.
By noting the time to load  apge or perform any action with stop watch. I know it sounds funny but this is the way performance is tested manually.

  1. What is use case? Tell me the attribute of use case?
“Use Case is description of functionality certain features of an application in terms of Actors, actions and responsibilities.”
Use Case attributes are:
  1. Information of Document, 2. Description, 3. Objective, 4. Actors, 5.Pre-conditions, 6.Data-element descriptions, 7.post conditions, 8.primary flow, 9. Alternative flow and Business rules/interaction implementations and etc….

  1. What is the difference between stress, volume and load testing?
Load Testing: we gradually increase the load and check the performance of the application. We check at what point or maximum load application can sustain.
Stress testing: In this testing v check the performance of application under extreme condition which rarely occurs like
(1) Many concurrent user access the application for short time.
(2) Extra ordinary long transaction.
(3) Very short transaction repeated quickly.

  1. When will do the beta test? when will do the alpha test?
Alpha and Beta tests comes under User acceptance test. We will conduct these two system being released. We are giving opportunity to customer to check all functionalities covered or not.
Alpha testing conducting for software application by real customer at development site.
Beta testing conducting for software product by model customer at customer site.

  1. How do you select test cases for Regression Testing (The point is when there is change code how do you come know which part of code or modules it will affect).
Consider an example of a form which has a username, password and Login button.
There is a code change and a new button “Reset” is introduced. Regression testing (for that build) will include testing only the “Login” button and not the Reset button (testing Reset button will be a part of cunation testing). Hence the Regression tester need not worry about the change in code, functionality. But he has to make sure that the existing functionality is working as desired. Testing of “Reset” button will be included as a part of Regression, for the next build
  1. Can anyone explain the example of high severity and low priority, low severity and high priority, high severity and high priority, low severity and low priority
  2. High severity and high priority – Database connectivity cannot be established by multiple users.
  3. Low severity and low priority – Small issues like, incorrect number of decimal digits in the output.
  4. Low severity and high priority – Images not updated.
  5. High severity and low priority – In a module of say 2 interfaces, the link between them is broken or is not functioning.
(1)High priority & High Severity: If u clicks on explorer icon or any other icon then system crash.
(2) Low priority & low severity: In login window, spell of ok button is “Ko”.
(3) Low priority & high severity: In login window, there is a restriction login name should be 8 characters if user enter 9 or than 9 in that case system get crash.
(4) High priority & low severity: Suppose logo of any brand company is not proper in their product. so it affects their business.

  1. What will be the Test case for ATM Machine & Coffee Machine?
Test cases for ATM Machine
  1. Successful in section of ATM card
  2. Unsuccessful operation due to insert card in wrong angle
  3. Unsuccessful operation due to invalid account ex:other bank card or time expired card
  4. Successful entry of PIN number
  5. Unsuccessful operation due to enter wrong PIN number 3times
  6. Successful selection of language
  7. Successful selection of account type
  8. Unsuccessful operation due to invalid account type
  9. Successful selection of withdrawl operation
  10. Successful selection of amount to be withdrawl
  11. Successful withdrawl operation
  12. Unsuccessful withdrawl operation due to wrong denominations
  13. Unsuccessful withdrawl operation due to amount is greater than day limit
  14. Unsuccessful withdrawl operation due to lack of money in ATM
  15. Unsuccessful withdrawl operation due to amount is greater than possible balance
  16. Unsuccessful withdrawl operation due to transactions is greater than day limit
  17. Unsuccessful withdrawl operation due to click cancel after insert card
  18. Unsuccessful withdrawl operation due to click cancel after inserts card & pin number
  19. Unsuccessful withdrawl operation due to click cancel after insert card, pin number & language
  20. Unsuccessful withdrawl operation due to click cancel after insert card, pin number, language &account type
  21. Unsuccessful withdrawl operation due to click cancel after insert card, pin number, language, account type & withdrawl operation
  22. Unsuccessful withdrawl operation due to click cancel after insert card, pin number, language, account type, withdrawl operation &amount to be withdrawl

  1. Tell me about your daily activities as a test engineer.
Role:
  1. Understanding the BRS and Use cases Document
  2. Giving system demo to PM, System analyst, designer, Dev lead.
  3. Preparing the Test Actions in xls sheet.
  4. Updating the Test Actions based on review comments by System analyst/Business Analyst.
  5. Preparing the Test cases and Datasets (System level and global level datasets) in word document
  6. Updating the Test Cases based on review comments by System analyst.
  7. Installing the application-Testing environment set up.
  8. Performing Functional, GUI, System, Compatibility testing (If necessary), Regression testing based on Test cases
  9. Preparing the defect report, Bug tracking list and sending daily status report to PM, leads.

  1. In sdlc process what is the role of PM, TL, DEVELOPER, tester in each and every phase? Please explain me in detail?
In the sdlc we have these phases
  1. Initial phase
  2. Analysis phase
  3. Designing phase
  4. Coding phase
  5. Testing
  6. Delivery and maintenance

In the initial phase project manager can prepare a document for the requirements, team leader will prepare a team which is having  test engineers, developer will provided by the project manager, tester will prepare test cases for that particular project
Analysis phase all the members have a meeting to finalize the technology to develop that project, the employee, time ,…
Designing phase the project manager like senior level management will give the directions and source code to the team members to develop the actual code that is guidelines will be given in this phase
Coding phase developer will develop the actual code using the source code and they release the application to the tester
Testing phase they deploy their test cases to that application and prepare a bug profile document if there is any defect/bug in that application and send it back to developer, developer may rectify and releases the application as next build and if the bug not understand it will send to the project lead   in the delivery phase the Sr.Testengg can deploy the application in the client environment
Maintenance phase if the client get any problem with the application it may solved by the project lead with the help of testers and developers

  1. How do you Test Application with having any requirement and Document?
If it is an existing system or if a build is available then we explore the system while testing. This helps knowing the functional use of the system, and its usability.
By asking questions to end users and how they use it will be more beneficial. Also, you may work with BA to know more about the system.
Black box test is nothing but the same where you explore the system without having any prior knowledge to the system.

  1. What is backend testing using SQL?
Executing SQL statements to check if the data submitted by a GUI program is updated in the database or not? Executing the statement the data base is connecting to those particular changes, updating or not it will test. Backend testing is the testing the integration between the application and the database. It is checking the changes made in the database are getting reflected in the application.
Example: A new column is added in the table. Here we test by giving values in the application and value has to be stored in the table.

  1. What are the reasons why parameterization is necessary when load testing the Web server and the database server?
When you test your applications, you may want to check how the application performs the same operations with multiple sets of data. For example, suppose you want to check how your Web site responds to ten separate sets of data. You could record ten separate tests, each with its own set of data. Alternatively, you can create Data Table parameters so that your test runs ten times, each time using a different set of data.

  1. Difference between strategic test plan & test plan?
Strategic test is an organizational level term which is applied for all the projects in the organization with small customizations.
Test plan is project level term and which can be applied for that specific project only.
Test plan is a strategic document which describes how to perform testing in an efficient effective and optimized way. Quality lead test lead can prepare this test plan
Strategic test plan is an already or new test plan which can be used in the future for another project also with some changes in the same organization.

75.Draw Backs of automated testing?
DRAW BACKS OF AUTOMATION
Expensive, lack of expertisation, all the areas we cannot automate

  1. When will u make update and modify the test object properties in the repository?
Whenever the developer may change any one of the object properties definitely we have to change the same in the OR object repository. If new version net build released from the development department then the test engg must to modify or update the same is compulsory, otherwise the test will show the bug

  1. What are the documents needed to create a test case? How u tell it is test case?
    System requirements specification, Use case document, Test Plan

  1. in customer details from having fields like customer name, customer address. After completion of this module, client raise the change as insert the two radio buttons after customer address. How you can check as a tester.
  2. First we need to verify whether the radio button is there are not?
  3. Confirm the radio buttons are present after the customer address or not.
  4. Verify the no of radio button.
  5. Verify only one radio button should be checked initially when we open the Customer details form (if it is mentioned in FRS)
  6. Verify the functionality of the radio buttons i.e. if we check one ratio button, second radio button should be unchecked.
  7. Verify the spell check of radio button label name.
  8. Verify the alignment of radio buttons in the form.

  1. at the time of testing web based applications and client server applications, what you observed as a tester?
We generally check for the links, data retrieving and posting.
We perform load and stress testing especially for Web based and Client-Server applications.

  1. What are the documents required to prepare test plan?
Introduction, scope, test team and their responsibilities, test environment,  S/W&H/W requirements, test data preparation ,levels of testing, severity  & priority , schedule ,risk, automation plan, features to test, bug life cycle all these are documents of test plan.

  1. What is testing policy and testing methodology? And what is the difference?
Testing policy means all types of testing or testing techniques (i.e. functional testing, sanity testing etc).Testing methodology means white box and black box testing.

  1. What is comparison testing?
Comparison Testing means comparing your software with the better one or you’re Competitor.
While comparison Testing we basically compare the Performance of the software. For ex If you have to do Comparison Testing of PDF converter(Desktop Based Application) then you will compare your software with your Competitor on the basis of:-
  1. Speed of Conversion PDF file into Word.
  2. Quality of converted file.

  1. What is the general testing process?
Testing Process:
  1. Test requirements analysis
  2. Creation of Test Strategy (Which includes creation of Test Cases)
  3. Creation of Test Plans (Which includes Test Cases and Test Procedures)
  4. Execution of test cases
  5. Analyze the test results
  6. Report the defects if any

  1. What participation a manual tester can do in documentation? Are there any tools available for only documentation?
Yes, Manual tester will do Sub Test plan documents, as of my knowledge no tool is used to prepare documentation

  1. What is the difference between low and high level test cases? Examples please.
High level Test cases are those which covers major functionality in the application (i.e. retrieve, update display, cancel (functionality related test cases), and database test cases).
Low level test cases are those which are related to UI related test cases.

  1. is it mandatory to use USECASES or directly one can write test cases from requirements?
It’s not mandatory to write Use Cases, If the requirements are clear you can go ahead with Test Cases. Use Cases are written to know the business flow of the module/application.

  1. How does u develop test harness?
Test Environment +Test Bed
Test Environment: S/w and H/w
Test Bed: Test Documents like Test Plan Document, Test Case Document.
Test Environment means
  • Test Bed installation and configuration
  • Network connectivity’s
  • All the Software/ tools Installation and configuration
  • Coordination with Vendors and others

  1. Given n requirement collection doc, tester can prepare which test plan?
Test lead can prepare a test plan which performs testing on an application in an efficient effective and in an optimized way. Test development will do by the testers using the test plan in the test plan they prepare the test strategy (Test Strategy is a Document, developed by the Project manager, which contains what type of technique to follow and which module to test).
  1. Tester with development knowledge will be more effective. Justify?
If tester has experience in Development, it will be useful when testing for logical thinking where the error occurs, what is the cause? He can guess the functionality of component? He can easily understand the application environment? Those are plus points which people have Development experience.
Precisely he can justify that either functionality is wrong or right and can analyze the defects

  1. Last test case for project will be written in which phase?
As far as the SDLC is concerned last test case will be written for “Maintenance Phase”
As far as the STLC is concerned last test case will be written for “Acceptance Testing”

  1. What is test scenario and test case? Please explain detail
Test Scenario:
Test scenario is like laying out plans for testing the product, environmental condition, number of team members required, making test plans, making test cases and what all features are to be tested for the product. Test scenario is very much dependent on the product to be tested.
Test scenario is made before the actual testing starts.
Test Case:
Test case is a document which provides the steps to be executed which has been planned earlier. It also depends on the type of product to be tested. Number of test cases is not fixed for any product.

  1. What is the difference between Project Based Testing and Product Based Testing?
Project based is nothing but client requirements. Product based is nothing but market requirements. Ex. stretching shirt is a project based and readymade shirt is product based

  1. What is testing process in related to Application testing?
Testing process is the one which tells you how the application should be tested in order to minimize the bugs in the application. One main thing no application can be released as bug free application which impossible.

  1. What is the difference b/n Testing Methodology and Testing methods?
Testing Methodology define process, set of rules and principle which are follow by group concerned with testing the application. Here i explain 7 step testing methodology:
  1. Test Requirement Analysis
  2. Test Plan
  3. Test Design
  4. Test execute
  5. Defect track
  6. Test Automation
  7. Test Maintain
Testing methods or we can say that Testing Techniques:
White Box Testing (Unit Testing, Integration Testing)
Black Box Testing (System Testing, Functional Testing, Performance Testing>Load testing>stress testing>volume testing & Security Testing) UAT (done by user/client with actual/live data)

  1. What are starting link to test while website testing?
Web based systems are those using the internet, intranet and extranets Web based testing only needs be done once for any applications using the web. Web based testing are as follows:
  1. Functional correctness
  2. Integration
  3. Usability
  4. Security
  5. Performance
  6. Verification of code

  1. How GUI testing will be done in manual testing for a website?
For any testing there should be some set of standards to be followed. Particularly in GUI testing, look and feel should be good. We should follow the requirements specification documents for GUI testing.
There should be some screen shots (given by client) which we should follow as it is.
And for button sizes, font, font size , colors  used, placing of links, objects and the placing of the objects in the page should be followed some standards. If we take a button in the page that should be some standard size. If the size of that button is more or less the client feel bad about that. So we should have minimum common sense while testing GUI testing. some time there may be some mistakes in the screen shots provided by the client also, but that is our responsibility to raise those issues.

  1. What thing should be tested in regression testing?
While doing Regression Testing a tester must check that any new updating or Modification or Change in Functionality of a Particular Component or Module does not create any disorder and any negative effects on the functionality of the Application

  1. What are the documents required to prepare during testing?
Normally Test engineers are responsible for any release of a project. Even the release is for staging environment or change request release or production release
The minimum documents are
  1. Test Plan
  2. Test Cases
  3. Test Case Report
  4. Bug report.
  5. Release notes (which contains known issues).
  6. Installation document.

99.What is Test data ?Where we are using this in testing process?
What is the importance of this data?
To execute test cases we should have test data. This test data should be for positive and negative testing. For win runner we can get this test data from keyboard, excel sheets or from data base

  1. What is the difference between test case and test script?
Test case is a description what data to be tested and what data to be inserted what are the actions to be done to check actual result against expected result what are the actual inputs we will use? What are the expected results? is called test script
Test Script: Is a short program written in a programming language used to test part of the functionality of the software system. a written set of steps that should be performed manually can also be called a test script, However this is more correctly called a test case.

  1. What is the difference between bug, error, and defect.
At the time of coding mistake error, when the mistake noticed by the tester defect, tester sends this defect to development team if the developer agrees then it is bug.

  1. What is the difference between quality assurance and system testing explains in detail with an example?
Quality Assurance: It is nothing but building an adequate confidence in the customer that the developed software is according to requirements. Entire SDLC comes under QA. It is process oriented.
System Testing: It is the process of executing entire system i.e. checking the s/w as well as parts of system.

  1. How do you decide when you have ‘tested enough?’
When the 90% of requirements are covered, Maximum defects  are rectified except (some)low level defects are not covered , customer satisfy that project and time is less, then we are closing the testing.

  1. What is the difference between Build Management and Release Management?
When will conduct build verification and end to end testing?
Build Management is managing the issue fixture tasks in the builds whereas Release management is managing the functionality to be incorporated in the Release.
Build Verification Test (BVT)is done when the build is first received by the testers. The basic functionality is checked with valid data. This is done to check whether the build is testable or not. This is done by testers.
End to End testing is also called system testing. Done by senior test engineers or Test lead.

  1. What is boundary value analysis? What is the use of it?
Boundary value analysis is a technique for test data selection. Test engineer chooses the values that lie along the data extremes. It includes max, min, just inside, just outside, typical values and error values.
Boundary Value Analysis is a technique used for writing the test cases..For example: If a particular field accepts the
Values from 1 to 1000, then we test that field by entering only 1, 1000, 0, 1001, 999, 2.
i.e we check on the boundaries and then
Minimum-1, minimum +1 and maximum+1, maximum-1.

  1. What is equivalence partition? What is the use of it?
Equivalence nothing but select the valid and valid classes example as per client requirement the edit box access only
3-5 capital alphabets then we divided in ecp like valid values only A-Z invalid values are a-z and special characters like ^,8<%

  1. If there is no sufficient time for testing & u have to complete the testing then what will u do?
When I have less time to test the Product then I will take these following steps—
1)  Sanity or smoke testing
2)  Usability Testing
3) Formal Functionality and GUI Testing
4) Walk through with the Product

  1. What is meaning by prototype in SDLC?
This is a cyclic version of the linear model. In this model, once the requirement analysis is done and the design for a prototype is made, the development process gets started. Once the prototype is created, it is given to the customer for evaluation. The customer tests the package and gives his/her feed back to the developer who refines the product according to the customer’s exact expectation. After a finite number of iterations, the final software package is given to the customer. In this methodology, the software is devolved as a result of periodic shuttling of information between the customer and developer. This is the most popular development model in the contemporary IT industry. Most of the successful software products have been developed using this model – as it is very difficult (even for a whiz kid!) to comprehend all the requirements of a customer in one shot. There are many variations of this model skewed with respect to the project management styles of the companies.
New versions of a software product evolve as a result of prototyping.

  1. What is difference between desktop and web application?
The biggest d/f b/w Desktop and web application is Desktop App (DA) is the machine independent, hence every change has only reflects at the machine level.   Where as Web App (WA) is the Internet dependent program, hence any change in the program reflects at every where, where it becomes use.
EX:  Suppose there are 5 machines in DA, 5 times installed individually at every machine and if there is any change made in DA then at every machine change has to be made.  In WA where the program or Application at the Server or at  the one common machine, then if changes made at only central or server or common machine all the changes get reflected at Every client machine.

  1. Difference between application testing and product testing?
Product testing means when any company does testing for their own (company’s) product ex… Norton Ant Virus is the Symantec’s product; if Symantec test the Norton ie. Called
As the Product testing. Where as if any company take some projects from some other
Companies like ABC Company takes projects from IBM and test that project on some charges ie called as Application Testing.

  1. What is a broken link in web testing and how test it.
When we clicked on Hyperlink if it opens Page can’t be displayed then that Hyperlink is called as broken link
——————————————————————————————————————————————-

What are the phases of SDLC?

For developing systems/software that involves 10 Phases:
  1. Initiation
    2. System Concept Development
    3. Planning
    4. Requirements Analysis
    5. Design
    6. Development
    7. Integration and Testing
    8. Implementation
    9. Operations and Maintenance
    10. Disposition.The Phases
    Initiation – Initiation is where there is an identified need for a new system. For instance, a retailer of fine crystal glass is in need of a new system to handle inventory. They’ve decided that the old System of putting the inventory into a simple spreadsheet will no longer work. They want a system where they can track inventory, inventory cost, facilities cost, personnel, a customer database, can track trends in buying, identify inventory that is not moving well and price it to move, etc. In other words, they want to be able to know everything with a few clicks of the keyboard. A Project Management is placed in charge and he/she will develop a Concept Proposal – which is a document identifying the problem and why the new system needs to be pursued. The document is presented to upper management who approves it and the project moves on to the next phase.
    System Concept Development – This is where the first real look at what will be necessary takes place. Several reports can be created here.
    – Feasibility Study (will it work?)
    – Cost/Benefit Analysis (is the cost really worth it?)
    – System Boundary (how far should the project go?)
    – Risk Management (what will happen if we don’t do it?)
    These reports are then presented, again, to the powers that be and a decision is made whether or not to go ahead. They approve the funding. If they give their approval it’s on to the next phase.
    Planning Phase – Who is doing what, when, and how? What personnel are needed? Use existing personnel or hire consultants? New Hardware? Develop own software or buy it off the shelf? What are the Deliverables – such as completed software programming and documentation, user manual, training, testing plans, etc? A Planning document is submitted for approval.
    Requirements Analysis – Documentation of requirements. What interfaces are required (will it run with Windows NT and Windows XP?). What is the functionality required – should it be run with the mouse or keyboard commands? What is the level of proficiency required by the user? Will a new room be needed for the servers or equipment? Requirements documentation is approved, then it’s on to the Design phase.
    Design Phase – Take those Requirements and develop detailed, workable specifications. This is where everything is put together and the actual design of the system is done. This is also where documentation such as the Maintenance Manual, Operations Manual, and Training Manual begin. This is also where some of the flaws in the original planning may appear and require some adjustment. Again, there is documentation and approval.
    Development Phase – The system is built. The software, hardware, and testing occur during the Development Stage. This is also the phase where the bugs are worked out of the system. A contingency plan is also developed at this point. A contingency plan is an emergency management document. If the power goes out – what happens to the system? What is the back up? How fast can it be brought back up to speed? Again, documentation and approval (get used to this).
    Integration and Testing Phase – This is the formal integration and testing of the system. Testing has been done on the development phase, but in the Integration and Testing Phase it is a formal, documented testing procedure, not only to assure that the system performs as designed, but testing the roll-out of the system. If there is already another system in place with data, how fast can that data be migrated into the new system and useable to the company? Usually, the system is rolled-out over a weekend so that if anything goes wrong, the old system is still active and available. Integration and Testing is vital to the decision to go “live” with the new system. If it fails testing, it cannot be
    trusted to work. Approval of testing and test results is necessary before the project moves into implementation.
    Implementation Phase – Everything is ready and it’s time to go live. Training takes place, everyone who will use the system must be fully informed of the day it goes live, previous data is migrated, and the system is ready for use. After it goes live, the system is reviewed post-implementation to see how well it worked and how well did the project go. It’s often known as a debriefing or lessons learned meeting. It is also where any problems that were not crucial to the implementation can be addressed and any necessary changes to the system documented for future versions.
    Operations and Maintenance Phase – Hey, it’s not over. Just like a car engine, maintenance and support are necessary. What happens if the system is based on Microsoft NT 4.0 and 2 years later Microsoft is no longer supporting NT 4.0? Or, a new e-mail program is put in place and it interferes with the system? Fixes are necessary and will occur. This is the day-to-day operation of the software. No one can just walk away once the software is rolled-out and say, “Whew, glad that’s over.” It’s not over; it’s just begun.
    Disposition Phase – This is where the system has become obsolete. Perhaps a whole new system is coming in, or this system cannot keep up. Many programs and systems became obsolete with the Y2K problem or with upgrades of operating systems. Whatever the reason, putting the system to bed involves more than just shutting off the server. Often, the system may be kept going due to regulatory issues or because there are still projects using it. Even if the system will be shut down due to the development of a better system, disposition needs planning. A disposition plan, archiving of system documentation, archiving of data, even a plan for getting rid of the old equipment may be a part of the Disposition Phase.
    This is a short description of SDLC and its phases. The important idea to take away from SDLC is that it involves planning, approval, testing, and documentation to assure that the system can, and will work as required.

What is comparison testing in software engineering?

Comparison Testing: Test Cases results are compared with the predicted results of the Test Oracle (Test Oracle: a mechanism to produce the predicted outcomes to compare with the actual outcomes of the software under test [from BS7925-1])
It’s a bit of an old fashioned term, in that predicted results are usually included in the test case script. A test matrix with expected result values could be called a test oracle, or a predictive spreadsheet could fulfill that function.
Note: Software Testing has developed many redundant/overlapping terminologies over the last decade.
e.g. Black Box Testing aka Behavioral Testing aka Functional Testing
Don’t get too hung up with the terminology, as it varies from organization to organization.

Smoke testing vs sanity testing?

moke testing will be conducted to ensure whether the most
crucial functions of a software work, but not bothering
with finer details.
A Sanity test is used to determine a small section of the application is still working after a minor change.
Smoke Testing:
Smoke testing is nothing but to test the functionality of the software once build is done.
Sanity testing:
Sanity testing is nothing but to test the existing behaviour of an application, environment check up before starts execution.

What is a cookie as in a cookie on a computer?

A cookie is a small file stored on your computer that is created by a website. Cookies are used in a number of different ways such as knowing that you are logged on to a website, or tracking what ads you click on a website.

How can you erase history and cookies from computer?

In open internet explorer web page, click on tools,
click Delete browsing history,
or, click internet options,
under general tab,
under browsing history, click delete,
click delete cookies, delete history,
press ok, ok.
In Mozilla firefox open web page,
click tools,
click clear private data,
or, click options,privacy,
check Always clear my private data when i close firefox.

—————————————————————————————————————————————————-


  1. What is the difference between Functional Requirement and Non-Functional Requirement?The Functional Requirement specifies how the system or application SHOULD DO where in
    Non Functional Requirement it specifies how the system or application SHOULD BE.
Some functional Requirements are
  • Authentication
  • Business rules
  • Historical Data
  • Legal and Regulatory Requirements
  • External Interfaces
Some Non-Functional Requirements are
  • Performance
  • Reliability
  • Security
  • Recovery
  • Data Integrity
  • Usability
  1. How Severity and Priority are related to each other?
  • Severity- tells the seriousness/depth of the bug where as
  • Priority- tells which bug should rectify first.
  • Severity- Application point of view
  • Priority- User point of view
  1. Explain the different types of Severity?
  • User Interface Defect-Low
  • Boundary Related Defects-Medium
  • Error Handling Defects-Medium
  • Calculation Defects-High
  • Interpreting Data Defects-High
  • Hardware Failures& Problems-High
  • Compatibility and Intersystem defects-High
  • Control Flow defects-High
  • Load conditions (Memory leakages under load testing)-High
  1. What is the difference between Priority and Severity? 
    The terms Priority and Severity are used in Bug Tracking to share the importance of a bug among the team and to fix it.
    Severity: Is found in the Application point of view
Priority– Is found in the User point of view
Severity– (tells the seriousness/depth of the bug)
  • The Severity status is used to explain how badly the deviation is affecting the build.
  • The severity type is defined by the tester based on the written test cases and functionality.
Example
If an application or a web page crashes when a remote link is clicked, in this case clicking the remote link by an user is rare but the impact of application crashing is severe, so the severity is high and priority is low.
PRIORITY- (tells which bug should rectify first)
  • The Priority status is set by the tester to the developer mentioning the time frame to fix a defect. If High priority is mentioned then the developer has to fix it at the earliest.
  • The priority status is set based on the customer requirements.
Example
If the company name is misspelled in the home page of a website, then the priority is high and the severity is low to fix it.
Severity: Describes the bug in terms of functionality.
Priority: Describes the bug in terms of customer.
Few examples:
High Severity and Low Priority -> Application doesn’t allow customer expected configuration.
High Severity and High Priority -> Application doesn’t allow multiple user’s.
Low Severity and High Priority -> No error message to prevent wrong operation.
Low Severity and low Priority -> Error message is having complex meaning.
Or
Few examples:
High Severity -Low priority
Supposing, you try the wildest or the weirdest of operations in a software (say, to be released the next day) which a normal user would not do and supposing this renders a run -time error in the application,the severity would be high. The priority would be low as the operations or the steps which rendered this error by most chances will not be done by a user.
Low Severity -High priority
An example would be- you find a spelling mistake in the name of the website which you are testing.Say, the name is supposed to be Google and its spelled there as ‘Gaogle’. Though, it doesn’t affect the basic functionality of the software, it needs to be corrected before the release. Hence, the priority is high.
High severity- High Priority
A bug which is a show stopper. i.e., a bug due to which we are unable to proceed ourtesting.An example would be a run time error during the normal operation of the software,which would cause the application to quit abruptly.
Low severity – low priority
Cosmetic bugs
What is Defect Severity?
A defect is a product anomaly or flaw, which is variance from desired product specification. The classification of defect based on its impact on operation of product is called Defect Severity.
5. What is Bucket Testing?
Bucket testing (also known as A/B Testing) is mostly used to study the impact of various product designs in website metrics, two simultaneous versions were run in a single or set of web pages to measure the difference in click rates, interface and traffic.
6. What is Entry and Exit Criteria in Software Testing?
Entry Criteria is the process that must be present when a system begins, like,
  • SRS (Software Requirement Specification)
  • FRS (Functional Requirement Specification)
  • Usecase
  • Test Case
  • Test plan
Exit Criteria ensures whether testing is completed and the application is ready for release, like,
  • Test Summary Report
  • Metrics
  • Defect Analysis report
  1. What is Concurrency Testing?
    Concurrency Testing (also commonly known as Multi User Testing) is used to know the effects of accessing the Application, Code Module or Database by different users at the same time.It helps in identifying and measuring the problems in Response time, levels of locking and deadlocking in the application.
Example
Load runner is widely used for this type of testing, Vugen (Virtual User Generator) is used to add the number of concurrent users and how the users need to be added like Gradual Ramp up or Spike Stepped.
8. Explain Statement coverage/Code coverage/Line Coverage?
Statement Coverage or Code Coverage or Line Coverage is a metric used in White Box Testing where we can identify the statements executed and where the code is not executed cause of blockage. In this process each and every line of the code needs to be checked and executed.
Some advantages of Statement Coverage / Code Coverage / Line Coverage are
  • It verifies what the written code is expected to do and not to do.
  • It measures the quality of code written.
  • It checks the flow of different paths in the program also ensure whether those paths are tested or not.
To Calculate Statement Coverage,
Statement Coverage = Statements Tested / Total No. of Statements.
9. Explain Branch Coverage/Decision Coverage?
Branch Coverage or Decision Coverage metric is used to check the volume of testing done in all components. This process is used to ensure whether all the code is executed by verifying every branch or decision outcome (if and while statements) by executing atleast one time, so that no branches lead to the failure of the application.
To Calculate Branch Coverage,
Branch Coverage = Tested Decision Outcomes / Total Decision Outcomes.
10. What is the difference between High level and Low Level test case?
High level Test cases are those which cover major functionality in the application (i.e. retrieve, update display, cancel (functionality related test cases), database test cases).
Low level test cases are those related to User Interface (UI) in the application.
11. Explain Localization testing with example?
Localization is the process of changing or modifying an application to a particular culture or locale. This includes change in user interface, graphical designs or even the initial settings according to their culture and requirements.
In terms of Localization Testing it verifies how correctly the application is changed or modified into that target culture and language.
In case of translation required of the application on that local language, testing should be done on each field to check the correct translation. Other formats like date conversion, hardware and software usage like operating system should also be considered in localization testing.
Examples for Localization Testing are
In Islamic Banking all the transactions and product features are based on Shariah Law, some important points to be noted in Islamic Banking are
  • In Islamic Banking, the bank shares the profit and loss with the customer.
  • In Islamic Banking, the bank cannot charge interest on the customer; instead they charge a nominal fee which is termed as “Profit
  • In Islamic Banking, the bank will not deal or invest in business like Gambling, Alcohol, Pork, etc.
In this case, we need to test whether these Islamic banking conditions were modified and applied in the application or product.
In Islamic Lending, they follow both the Gregorian calendar and Hijiri Calendar for calculating the loan repayment schedule. The Hijiri Calendar is commonly called as Islamic Calendar followed in all the Muslim countries according to the lunar cycle. The Hijiri Calendar has 12 months and 354 days which is 11 days shorter than Gregorian calendar. In this case, we need to test the repayment schedule by comparing both the Gregorian calendar and Hijiri Calendar.
12. Explain Risk Analysis in Software Testing?
In Software Testing, Risk Analysis is the process of identifying risks in applications and prioritizing them to test.
In Software testing some unavoidable risk might takes place like
  • Change in requirements or Incomplete requirements
  • Time allocation for testing.
  • Developers delaying to deliver the build for testing.
  • Urgency from client for delivery.
  • Defect Leakage due to application size or complexity.
To overcome these risks, the following activities can be done
  • Conducting Risk Assessment review meeting with the development team.
  • Profile for Risk coverage is created by mentioning the importance of each area.
  • Using maximum resources to work on High Risk areas like allocating more testers for High risk areas and minimum resources for Medium and Low risk areas. Creation of Risk assessment database for future maintenance and management review.
  1. What is the difference between Two Tier Architecture and Three Tier Architecture?
    In Two Tier Architecture or Client/Server Architecture two layers like Client and Server is involved. The Client sends request to Server and the Server responds to the request by fetching the data from it. The problem with the Two Tier Architecture is the server cannot respond to multiple requests at the same time which causes data integrity issues.
    The Client/Server Testing involves testing the Two Tier Architecture of user interface in the front end and database as backend with dependencies on Client, Hardware and Servers.In Three Tier Architecture or Multi Tier Architecturethree layers like Client, Server and Database are involved. In this the Client sends a request to Server, where the Server sends the request to Database for data, based on that request the Database sends back the data to Server and from Server the data is forwarded to Client.
    The Web Application Testing involves testing the Three Tier Architecture including the User interface, Functionality, Performance, Compatibility, Security and Database testing.
    14. What is the difference between Static testing and dynamic testing?
    Static Testing (done in Verification stage)
Static Testing is a White Box testing technique where the developers verify or test their code with the help of checklist to find errors in it, this type of testing is done without running the actually developed application or program. Code Reviews, Inspections, Walkthroughs are mostly done in this stage of testing.
Dynamic Testing (done in Validation stage)
Dynamic Testing is done by executing the actual application with valid inputs to check the expected output. Examples of Dynamic Testing methodologies are Unit Testing, Integration Testing, System Testing and Acceptance Testing.
Some differences between Static Testing and Dynamic Testing are,
  • Static Testing is more cost effective than Dynamic Testing because Static Testing is done in the initial stage.
  • In terms of Statement Coverage, the Static Testing covers more areas than Dynamic Testing in shorter time.
  • Static Testing is done before the code deployment where the Dynamic Testing is done after the code deployment.
  • Static Testing is done in the Verification stage where the Dynamic Testing is done in the Validation stage.
  1. Explain Use case diagram. What are the attributes of use cases?
    Use Case Diagrams is an overview graphical representation of the functionality in a system. It is used in the analysis phase of a project to specify the system to be developed.
    In Use Case Diagrams the whole system is defined as ACTORS, USE CASES and ASSOCIATIONS, the ACTORS are the external part of the system like users, computer software & hardware, USECASES is the behavior or functionality of the system when these ACTORS perform an action, the ASSOCIATIONS are the line drawn to show the connection between ACTORS and USECASES. One ACTOR can link too many USECASES and one USECASE can link too many ACTORS.16. What is Web Application testing? Explain the different phases in Web Application testing?
    Web Application testing is done on a website to check its load, performance, Security, Functionality, Interface, compatibility and other usability related issues. In Web application testing, three phases of testing is done, they are,
Web Tier Testing
In Web tier testing, the browser compatibility of the application will be tested for IE, Fire Fox and other web browsers.
Middle Tier Testing
In Middle tier testing, the functionality and security issues were tested.
Database Tier Testing
In Database tier testing, the database integrity and the contents of the database were tested and verified.
17. Explain Unit testing, Interface Testing and Integration testing. Also explain the types of integration testing in brief?
Unit testing
Unit Testing is done to check whether the individual modules of the source code are working properly. i.e. testing each and every unit of the application separately by the developer in developer’s environment.
Interface Testing
Interface Testing is done to check whether the individual modules are communicating properly one among other as per the specifications.
Interface testing is mostly used in testing the user interface of GUI application.
Integration testing
Integration Testing is done to check the connectivity by combining all the individual modules together and test the functionality.
The types of Integration Testing are
  • Big Bang Integration Testing
In Big Bang Integration Testing, the individual modules are not integrated until all the modules are ready. Then they will run to check whether it is performing well.
In this type of testing, some disadvantages might occur like,
Defects can be found at the later stage.It would be difficult to find out whether the defect arouse in Interface or in module.
  1. Top Down Integration Testing
In Top Down Integration Testing, the high level modules are integrated and tested first. i.e Testing from main module to sub module. In this type of testing, Stubs are used as temporary module if a module is not ready for integration testing.
3.  Bottom Up Integration Testing
In Bottom Up Integration Testing, the low level modules are integrated and tested first i.e Testing from sub module to main module. Same like Stubs, here drivers are used as a temporary module for integration testing.
18. Explain Alpha, Beta, Gamma Testing?
Alpha Testing:
Alpha Testing is mostly like performing usability testing which is done by the in-house developers who developed the software or testers. Sometimes this Alpha Testing is done by the client or an outsider with the presence of developer and tester. The version release after alpha testing is called Alpha Release.
Beta Testing:
Beta Testing is done by limited number of end users before delivery, the change request would be fixed if the user gives feedback or reports defect. The version release after beta testing is called beta Release.
Gamma Testing:
Gamma Testing is done when the software is ready for release with specified requirements, this testing is done directly by skipping all the in-house testing activities.
19. Explain the methods and techniques used for Security Testing?
Security testing can be performed in many ways like,
  • Black Box Testing
  • White Box Testing
  • Database Testing
  1. Black Box Testing
  2. Session Hijacking
Session Hijacking commonly called as “IP Spoofing” where a user session will be attacked on a protected network.
  1. Session Prediction
Session prediction is a method of obtaining data or a session ID of an authorized user and gets access to the application. In a web application the session ID can be retrieved from cookies or URL.
The session prediction happening can be predicted when a website is not responding normally or stops responding for an unknown reason.
c. Email Spoofing
Email Spoofing is duplicating the email header (“From” address) to look like originated from actual source and if the email is replied it will land in the spammers inbox. By inserting commands in the header the message information can be altered. It is possible to send a spoofed email with information you didn’t write.
  1. Content Spoofing
Content spoofing is a technique to develop a fake website and make the user believe that the information and website is genuine. When the user enters his Credit Card Number, Password, SSN and other important details the hacker can get the data and use if for fraud purposes.
e. Phishing
Phishing is similar to Email Spoofing where the hacker sends a genuine look like mail attempting to get the personal and financial information of the user. The emails will appear to have come from well known websites.
f. Password Cracking
Password Cracking is used to identify an unknown password or to identify a forgotten password
Password cracking can be done through two ways,
  • Brute Force â€“The hacker tries with a combination of characters within a length and tries until it is getting accepted.
  • Password Dictionary– The hacker uses the Password dictionary where it is available on various topics.
  1. White Box level
  2. Malicious Code Injection
SQL Injection is most popular in Code Injection Attack, the hacker attach the malicious code into the good code by inserting the field in the application. The motive behind the injection is to steal the secured information which was intended to be used by a set of users.
Apart from SQL Injection, the other types of malicious code injection are XPath Injection, LDAP Injection, and Command Execution Injection. Similar to SQL Injection the XPath Injection deals with XML document.
b. Penetration Testing:
Penetration Testing is used to check the security of a computer or a network. The test process explores all the security aspects of the system and tries to penetrate the system.
c. Input validation:
Input validation is used to defend the applications from hackers. If the input is not validated mostly in web applications it could lead to system crashes, database manipulation and corruption.
d. Variable Manipulation
Variable manipulation is used as a method for specifying or editing the variables in a program. It is mostly used to alter the data sent to web server.
3. Database Level
  1. SQL Injection
SQL Injection is used to hack the websites by changing the backend SQL statements, using this technique the hacker can steal the data from database and also delete and modify it.
20. Explain IEEE 829 standards and other Software Testing standards?
An IEEE 829 standard is used for Software Test Documentation, where it specifies format for the set of documents to be used in the different stages software testing. The documents are,
Test Plan-Test Plan is a planning document which has information about the scope, resources, duration, test coverage and other details.
Test Design– Test Design document has information of test pass criteria with test conditions and expected results.
Test Case- Test case document has information about the test data to be used.
Test Procedure- Test Procedure has information about the test steps to be followed and how to execute it.
Test Log- Test log has details about the run test cases, test plans & fail status, order, and the resource information who tested it.
Test Incident Report- Test Incident Report has information about the failed test comparing the actual result with expected result.
Test Summary Report- Test Summary Report has information about the testing done and quality of the software, it also analyses whether the software has met the requirements given by customer.
The other standards related to software testing are,
IEEE 1008 is for Unit Testing
IEEE 1012 is for Software verification and validation
IEEE 1028 is for Software Inspections
IEEE 1061 is for Software metrics and methodology
IEEE 1233 is for guiding the SRS development
IEEE 12207 is for SLC process
21. What is Test Harness?
Test Harness is configuring a set of tools and test data to test an application in various conditions, which involves monitoring the output with expected output for correctness.
The benefits of Test Harness are,
  • Productivity increase due to process automation.
  • Quality in the application.
  1. What is the difference between bug log and defect tracking?
    Bug Log: Bug Log document showing the number of defect such as open, closed, reopen or deferred of a particular moduleDefect Tracking- The process of tracking a defect such as symptom, whether reproducible /not, priority, severity and status.
    23. What are Integration Testing and Regression Testing?
    Integration Testing:
  • Combining the modules together & construct software architecture.
  • To test the communication & data flow
  • White & Black box testing techniques are used
  • It is done by developer & tester
Regression Testing
  • It is re-execution of our testing after the bug is fixed to ensure that the build is free from bugs.
  • Done after bug is fixed
  • It is done by Tester
  1. Explain Peer Review in Software Testing?
    It is an alternative form of Testing, where some colleagues were invited to examine your work products for defects and improvement opportunities.
    Some Peer review approaches are,
Inspection
It is a more systematic and rigorous type of peer review. Inspections are more effective at finding defects than are informal reviews.
Ex: In Motorola’s Iridium project nearly 80% of the defects were detected through inspections where only 60% of the defects were detected through formal reviews.
Team Reviews: It is a planned and structured approach but less formal and less rigorous comparing to Inspections.
Walkthrough: It is an informal review because the work product’s author describes it to some colleagues and asks for suggestions. Walkthroughs are informal because they typically do not follow a defined procedure, do not specify exit criteria, require no management reporting, and generate no metrics.
Or
A ‘walkthrough’ is an informal meeting for evaluation or informational purposes. Little or no preparation is usually required.
Pair Programming: In Pair Programming, two developers work together on the same program at a single workstation and continuously reviewing their work.
Peer Desk check
In Peer Desk check only one person besides the author examines the work product. It is an informal review, where the reviewer can use defect checklists and some analysis methods to increase the effectiveness.
Passaround: It is a multiple, concurrent peer desk check where several people are invited to provide comments on the product.
25. Explain Compatibility testing with an example?
Compatibility testing is to evaluate the application compatibility with the computing environment like Operating System, Database, Browser compatibility, backwards compatibility, computing capacity of the Hardware Platform and compatibility of the Peripherals.
Example
If Compatibility testing is done on a Game application, before installing a game on a computer, its compatibility is checked with the computer specification that whether it is compatible with the computer having that much of specification or not.
26. What is Traceability Matrix?
Traceability Matrix is a document used for tracking the requirement, Test cases and the defect. This document is prepared to make the clients satisfy that the coverage done is complete as end to end, this document consists of Requirement/Base line doc Ref No., Test case/Condition, Defects / Bug id. Using this document the person can track the Requirement based on the Defect id.
27. Explain Boundary value testing and Equivalence testing with some examples?
Boundary value testing is a technique to find whether the application is accepting the expected range of values and rejecting the values which falls out of range.
Exmple
A user ID text box has to accept alphabet characters ( a-z ) with length of 4 to 10 characters.
BVA is done like this, max value: 10 pass; max-1: 9 pass;
max+1=11 fail ;min=4 pass;min+1=5 pass;min-1=3 fail;
Like wise we check the corner values and come out with a conclusion whether the application is accepting correct range of values.
Equivalence testing is normally used to check the type of the object.
Example
A user ID text box has to accept alphabet characters (a – z) with length of 4 to 10 characters.
In +ve condition we have test the object by giving alphabets. i.e. a-z char only, after that we need to check whether the object accepts the value, it will pass.
In -ve condition we have to test by giving other than alphabets (a-z) i.e. A-Z, 0-9, blank etc, it will fail.
28. What is Security testing?
Security testing is the process that determines that confidential data stays confidential
Or
Testing how well the system protects against unauthorized internal or external access, willful damage, etc?
This process involves functional testing, penetration testing and verification.
29. What is Installation testing?
Installation testing is done to verify whether the hardware and software are installed and configured properly. This will ensure that all the system components were used during the testing process. This Installation testing will look out the testing for a high volume data, error messages as well as security testing.
30. What is AUT?
AUT is nothing but “Application Under Test”. After the designing and coding phase in Software development life cycle, the application comes for testing then at that time the application is stated as Application Under Test.
31. What is Defect Leakage?
Defect leakage occurs at the Customer or the End user side after the application delivery. After the release of the application to the client, if the end user gets any type of defects by using that application then it is called as Defect leakage. This Defect Leakage is also called as Bug Leakage.
32. What are the contents in an effective Bug report?
  • Project
  • Subject
  • Description
  • Summary
  • Detected By (Name of the Tester)
  • Assigned To (Name of the Developer who is supposed to the Bug)
  • Test Lead (Name)
  • Detected in Version
  • Closed in Version
  • Date Detected
  • Expected Date of Closure
  • Actual Date of Closure
  • Priority (Medium, Low, High, Urgent)
  • Severity (Ranges from 1 to 5)
  • Status
  • Bug ID
  • Attachment
  • Test Case Failed (Test case that is failed for the Bug)
  1. What is Error guessing and Error seeding?
Error Guessing is a test case design technique where the tester has to guess what faults might occur and to design the tests to represent them.
Error Seeding is the process of adding known faults intentionally in a program for the reason of monitoring the rate of detection & removal and also to estimate the number of faults remaining in the program.
34. What is Ad-hoc testing?
Ad hoc testing is concern with the Application Testing without following any rules or test cases.
For Ad hoc testing one should have strong knowledge about the Application.
35. What are the basic solutions for the software development problems?
  • Basic requirements- A clear, detailed, complete, achievable, testable requirement has to be developed. Use some prototypes to help pin down requirements. In nimble environments, continuous and close coordination with customers/end-users is needed.
  • Schedules should be realistic- enough time to plan, design, test, bug fix, re-test, change, and document in the given schedule. Adequate
  • testing– testing should be started early, it should be re-tested after the bug fixed or changed, enough time should be spend for testing and bug-fixing.
  • Proper study on initial requirements- be ready to look after more changes after the development has begun and be ready to explain the changes done to others. Work closely with the customers and end-users to manage expectations. This avoids excessive changes in the later stages.
  • Communication- conduct frequent inspections and walkthroughs in appropriate time period; ensure that the information and the documentation is available on up-to-date if possible electronic. More emphasize on promoting teamwork and cooperation inside the team; use prototypes and proper communication with the end-users to clarify their doubts and expectations.
  1. What are the common problems in the software development process?
    Inadequate requirements from the Client: if the requirements given by the client is not clear, unfinished and not testable, then problems may come.
    Unrealistic schedules: Sometimes too much of work is being given to the developer and ask him to complete in a Short duration, then the problems are unavoidable.
    Insufficient testing: The problems can arise when the developed software is not tested properly.
    Given another work under the existing process: request from the higher management to work on another project or task will bring some problems when the project is being tested as a team.
    Miscommunication: in some cases, the developer was not informed about the Clients requirement and expectations, so there can be deviations.37. What is the difference between Software Testing and Quality Assurance (QA)?
    Software Testing involves operation of a system or application under controlled conditions and evaluating the result. It is oriented to ‘detection’.
    Quality Assurance (QA) involves the entire software development PROCESS- monitoring and improving the process, making sure that any agreed-upon standards and procedures are followed, and ensuring that problems are found and dealt with. It is oriented to ‘prevention’.
    38. How to Test the water bottle?
    Note: Before going to generate some test idea on how to test a water bottle, I would like to ask few questions like:
  • Is it a bottle made up off glass, plastic, rubber, some metal, some kind of disposable materials or any thing else?
  • Is it meant only to hot water or we can use it with other fluids like tea, coffee, soft drinks, hot chocolate, soups, wine, cooking oil, vinegar, gasoline, acids, molten lava (!) etc.?
  • Who is going to use this bottle? A school going kid, a housewife, some beverage manufacturing company, an office-goer, a sports man, a mob protesting in a rally (going to use as missiles), an Eskimo living in an igloo or an astronaut in a space ship?
These kinds of questions may allow a tester to know a product (that he is going to test) in a better way. In our case, I am assuming that the water bottle is in form of a pet bottle and actually made up off either plastic or glass (there are 2 versions of the product) and is intended to be used mainly with water. About the targeted user, even the manufacturing company is not sure about them! (Sounds familiar! When a software company develops a product without clear idea about the users who are going to use the software!)
Test Ideas
  • Check the dimension of the bottle. See if it actually looks like a water bottle or a cylinder, a bowl, a cup, a flower vase, a pen stand or a dustbin! [Build Verification Testing!]
  • See if the cap fits well with the bottle.[Installability Testing!]
  • Test if the mouth of the bottle is not too small to pour water. [Usability Testing!]
  • Fill the bottle with water and keep it on a smooth dry surface. See if it leaks. [Usability Testing!]
  • Fill the bottle with water, seal it with the cap and see if water leaks when the bottle is tilted, inverted, squeezed (in case of plastic made bottle)! [Usability Testing!]
  • Take water in the bottle and keep it in the refrigerator for cooling. See what happens. [Usability Testing!]
  • Keep a water-filled bottle in the refrigerator for a very long time (say a week). See what happens to the water and/or bottle. [Stress Testing!]
  • Keep a water-filled bottle under freezing condition. See if the bottle expands (if plastic made) or breaks (if glass made). [Stress Testing!]
  • Try to heat (boil!) water by keeping the bottle in a microwave oven! [Stress Testing!]
  • Pour some hot (boiling!) water into the bottle and see the effect. [Stress Testing!]
  • Keep a dry bottle for a very long time. See what happens. See if any physical or chemical deformation occurs to the bottle.
  • Test the water after keeping it in the bottle and see if there is any chemical change. See if it is safe to be consumed as drinking water.
  • Keep water in the bottle for sometime. And see if the smell of water changes.
  • Try using the bottle with different types of water (like hard and soft water). [Compatibility Testing!]
  • Try to drink water directly from the bottle and see if it is comfortable to use. Or water gets spilled while doing so. [Usability Testing!]
  • Test if the bottle is ergonomically designed and if it is comfortable to hold. Also see if the center of gravityof the bottle stays low (both when empty and when filled with water) and it does not topple down easily.
  • Drop the bottle from a reasonable height (may be height of a dining table) and see if it breaks (both with plastic and glass model). If it is a glass bottle then in most cases it may break. See if it breaks into tiny little pieces (which are often difficult to clean) or breaks into nice large pieces (which could be cleaned without much difficulty). [Stress Testing!] [Usability Testing!]
  • Test the above test idea with empty bottles and bottles filled with water. [Stress Testing!]
  • Test if the bottle is made up of material, which is recyclable. In case of plastic made bottle test if it is easily crushable.
  • Test if the bottle can also be used to hold other common household things like honey, fruit juice, fuel, paint, turpentine, liquid wax etc. [Capability Testing!]
  1. What is Portlet Testing ?
    Following are the features that should be concentrated while testing a portleti.Test alignment/size display with multiple style sheets and portal configurations. When you configure a portlet object in the portal, you must choose from the following alignments:
    a. Narrow portlets are displayed in a narrow side column on the portal page. Narrow portlets must fit in a column that is fewer than 255 pixels wide.
    b. Wide portlets are displayed in the middle or widest side column on the portal page. Wide portlets fit in a column fewer than 500 pixels wide.
    ii. Test all links and buttons within the portlet display. (if there are errors, check that all forms and functions are uniquely named, and that the preference and gateway settings are configured correctly in the portlet web service editor.)
    iii. Test setting and changing preferences. (if there are errors, check that the preferences are uniquely named and that the preference and gateway settings are configured correctly in the portlet web service editor.)
    iv. Test communication with the backend application. Confirm that actions executed through the portlet are completed correctly. (if there are errors, check the gateway configuration in the portlet web service editor.)
    v. Test localized portlets in all supported languages. (if there are errors, make sure that the language files are installed correctly and are accessible to the portlet.)
    vi. If the portlet displays secure information or uses a password, use a tunnel tool to confirm that any secure information is not sent or stored in clear text.
    Vii. If backwards compatibility is supported, test portlets in multiple versions of the portal.
    40. What is Equivalence Partitioning?
    Concepts: Equivalence partitioning is a method for deriving test cases. In this method, classes of input conditions called equivalence classes are
    identified such that each member of the class causes the same kind of
    processing and output to occur. In this method, the tester identifies various equivalence classes for partitioning. A class is a set of input conditions that are is likely to be handled the same way by the system. If the system were to handle one case in the class erroneously, it would handle all cases erroneously.
    41. Why Learn Equivalence Partitioning?
    Equivalence partitioning drastically cuts down the number of test cases required to test a system reasonably. It is an attempt to get a good ‘hit rate’, to find the most errors with the smallest number of test cases.
    DESIGNING TEST CASES USING EQUIVALENCE PARTITIONING
    To use equivalence partitioning, you will need to perform two steps.
  • Identify the equivalence classes
  • Design test cases
STEP 1:
IDENTIFY EQUIVALENCE CLASSES Take each input condition described in the specification and derive at least two equivalence classes for it. One class represents the set of cases which satisfy the condition (the valid class) and one represents cases which do not (the invalid class) Following are some general guidelines for identifying equivalence classes: a) If the requirements state that a numeric value is input to the system and must be within a range of values, identify one valid class inputs which are within the valid range and two invalid equivalence classes inputs which are too low and inputs which are too high. For example, if an item in inventory can have a quantity of – 9999 to + 9999, identify the following classes:
  • One valid class: (QTY is greater than or equal to -9999 and is less than or equal to 9999). This is written as (- 9999 < = QTY < = 9999)
  • The invalid class (QTY is less than -9999), also written as (QTY < -9999)
  • The invalid class (QTY is greater than 9999) , also written as (QTY >9999) b) If the requirements state that the number of items input by the system at some point must lie within a certain range, specify one valid class where the number of inputs is within the valid range, one invalid class where there are too few inputs and one invalid class where there are, too many inputs.
  1. What are two types of Metrics?
  • Process metrics: Primary metrics are also called as Process metrics. This is the metric the Six Sigma practitioners care about and can influence. Primary metrics are almost the direct output characteristic of a process. It is a measure of a process and not a measure of a high-level business objective. Primary Process metrics are usually Process Defects, Process cycle time and Process consumption.
  • Product metrics: Product metrics quantitatively characterize some aspect of the structure of a software product, such as a requirements specification, a design, or source code.
  1. What is the Outcome of Testing?
    A stable application, performing its task as expected.44. Why do you go for White box testing, when Black box testing is available?
    A benchmark that certifies Commercial (Business) aspects and also functional (technical) aspects is objectives of black box testing. Here loops, structures, arrays, conditions, files, etc are very micro level but they arc Basement for any application, So White box takes these things in Macro level and test these things
    45. What is Baseline document, Can you say any two?
    A baseline document, which starts the understanding of the application before the tester, starts actual testing. Functional Specification and Business Requirement Document
    46. Tell names of some testing type which you learnt or experienced?
    Any 5 or 6 types which are related to companies profile is good to say in the interview,
  • Ad – Hoc testing
  • Cookie Testing
  • CET (Customer Experience Test)
  • Depth Test
  • Event-Driven
  • Performance Testing
  • Recovery testing
  • Sanity Test
  • Security Testing
  • Smoke testing
  • Web Testing
  1. What exactly is Heuristic checklist approach for unit testing?
    It is method of achieving the most appropriate solution of several found by alternative methods is selected at successive stages testing. The checklist Prepared to Proceed is called Heuristic checklist48. What is a Data Guideline?
    Data Guidelines are used to specify the data required to populate the test bed and prepare test scripts. It includes all data parameters that are required to test the conditions derived from the requirement / specification The Document, which supports in preparing test data are called Data guidelines
    49. Why do you go for Test Bed?
    When Test Condition is executed its result should be compared to Test result (expected result), as Test data is needed for this here comes the role of test Bed where Test data is made ready.
    50. Why do we prepare test condition, test cases, test script (Before Starting Testing)?
    These are test design document which are used to execute the actual testing Without which execution of testing is impossible, finally this execution is going to find the bugs to be fixed so we have prepare this documents.
    51. Is it not waste of time in preparing the test condition, test case & Test Script?
    No document prepared in any process is waste of rime, That too test design documents which plays vital role in test execution can never be said waste of time as without which proper testing cannot be done.
    52. How do you go about testing of Web Application?
    To approach a web application testing, the first attack on the application should be on its performance behavior as that is very important for a web application and then transfer of data between web server and .front end server, security server and back end server.
    53. What kind of Document you need for going for a Functional testing?
    Functional specification is the ultimate document, which expresses all the functionalities of the application and other documents like user manual and BRS are also need for functional testing. Gap analysis document will add value to understand expected and existing system.
    54. Can the System testing be done at any stage?
    No, .The system as a whole can be tested only if all modules arc integrated and all modules work correctly System testing should be done before UAT (User Acceptance testing) and Before Unit Testing.
    55. What is Mutation testing & when can it be done?
    Mutation testing is a powerful fault-based testing technique for unit level testing. Since it is a fault-based testing technique, it is aimed at testing and uncovering some specific kinds of faults, namely simple syntactic changes to a program. Mutation testing is based on two assumptions: the competent programmer hypothesis and the coupling effect. The competent programmer hypothesis assumes that competent programmers turn to write nearly “correct” programs. The coupling effect stated that a set of test data that can uncover all simple faults in a program is also capable of detecting more complex faults. Mutation testing injects faults into code to determine optimal test inputs.
    56. Why it is impossible to test a program completely?
    With any software other than the smallest and simplest program, there are too many inputs, too many outputs, and too many path combinations to fully test. Also, software specifications can be subjective and be interpreted in different ways.
    57. How will you review the test case and how many types are there?
    There are 2 types of review:
Informal Review:technical lead reviewing.
Peer Review: by a peer at the same organization (walkthrough? technical – inspection).
Or
Reviews:
  • Management Review
  • Technical Review
  • Code Review
  • Formal Review (Inspections and Audits)
  • Informal Review (Peer Review and Code Review)
and coming to walk through….
objectives of Reviews:
  • To find defects in requirements.
  • To find defects in Design.
  • To identify deviations in any process and also provide valued suggestions to improve the process.
  1. What do you mean by Pilot Testing?
  • Pilot testing involves having a group of end users try the system prior to its full deployment in order to give feedback on IIS 5.0 features and functions.
    Or
    Pilot Testing is a Testing Activity which resembles the Production Environment.
  • It is Done Exactly between UAT and Production Drop.
  • Few Users who simulate the Production environment to continue the Business Activity with the System.
  • They Will Check the Major Functionality of the System before going into production. This is basically done to avoid the high-level Disasters.
  • Priority of the Pilot Testing Is High and Issues Raised in Pilot Testing has to be Fixed As Soon As Possible.
  1. What is SRS and BRS in manual testing?
    BRS is Business Requirement Specification which means the client who want to make the application gives the specification to software development organization and then the organization convert it to SRS (Software requirement Specification) as per the need of the software.60. What is Smoke Test and Sanity Testing? When will use the Above Tests?
    Smoke Testing: It is done to make sure if the build we got is testable or not, i.e to check for the testability of the build also called as “day 0” check. Done at the ‘build level’
    Sanity Testing: It is done during the release phase to check for the main functionalities without going deeper. Sometimes also called as subset of regression testing. When no rigorous regression testing is done to the build, sanity does that part by checking major functionalities. Done at the ‘release level’
    61. What is debugging?
    Debugging is finding and removing “bugs” which cause the program to respond in a way that is not intended.
    62. What is determination?
    Determination has different meanings in different situations. Determination means a strong intention or a fixed intention to achieve a specific purpose. Determination, as a core value, means to have strong will power in order to achieve a task in life. Determination means a strong sense of self-devotion and self-commitment in order to achieve or perform a given task. The people who are determined to achieve various objectives in life are known to succeed highly in various walks of life.
    Another way, it could also mean calculating, ascertaining or even realizing a specific amount, limit, character, etc. It also refers to a certain result of such ascertaining or even defining a certain concept.
    It can also mean to reach at a particular decision and firmly achieve its purpose.
    63. What is exact difference between Debugging & Testing?
    Testing is nothing but finding an error/problem and its done by testers where as debugging is nothing but finding the root cause for the error/problem and that is taken care by developers.
    Or
    Debugging-is removing the bug and is done by developer.
    Testing – is identifying the bug and is done by tester.
    64. What is fish model can you explain?
    Fish model explains the mapping between different stages of development and testing.
    Phase 1
Information gathering takes place and here the BRS document is prepared.

Phase 2
Analysis takes place
During this phase, development people prepare SRS document which is a combination of functional requirement specification and system requirement specification. During this phase, testing people are going for reviews.
Phase-3
Design phase
Here HLD and LLD high level design document and low level design documents are prepared by development team. Here, the testing people are going for prototype reviews.
Phase-4
coding phase
White box testers start coding and white box testing is being conducted by testing team.
Phase-5
testing phase
White box testing takes place by the black box test engineers.
Phase-6
release and maintenance.
65. What is Conformance Testing?
The process of testing that an implementation conforms to the specification on which it is based. Usually applied to testing conformance to a formal standard.
66. What is Context Driven Testing?
The context-driven school of software testing is flavor of Agile Testing that advocates continuous and creative evaluation of testing opportunities in light of the potential information revealed and the value of that information to the organization right now.
67. What is End-to-End testing?
Similar to system testing, the ‘macro’ end of the test scale involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate.
68. When the testing should be ended?
Testing is a never ending process, because of some factors testing May terminates.
The factors may be most of the tests are executed, project deadline, test budget depletion, bug rate falls down below the criteria.
69. What is Parallel/Audit Testing?
Testing where the user reconciles the output of the new system to the output of the current system to verify the new system performs the operations correctly.
70. What are the roles of glass-box and black-box testing tools?
Black-box testing
It is not based on knowledge of internal design or code. Tests are based on requirements and functionality. Black box testing is used to find the errors in the following.
  • Interface errors
  • Performance errors
  • Initialization errors
  • Incorrect or missing functionality
  • Errors while accessing external database
Glass-box testing
It is based on internal design of an application code. Tests are based on path coverage, branch coverage, and statement coverage. It is also known as White Box testing.
  • White box test cases can check for;
  • All independent paths with in a module are executed atleast once
  • Execute all loops
  • Exercises all logical decisions
  • Exercise internal data structure to ensure their validity
  1. What is your experience with change control? Our development team has only 10 members. Do you think managing change is such a big deal for us?
    Whenever the modifications happening to the actual project all the corresponding documents are adapted on the information. So as to keep the documents always in sync with the product at any point of time72. What is GAP ANALYSIS?
    The gap analysis can be done by traceability matrix that means tracking down each individual requirement in SRS to various work products.
    73. How do you know when your code has met specifications?
    With the help of traceability matrix. All the requirements are tracked to the test cases. When all the test cases are executed and passed is an indication that the code has met the requirements.
    74. At what stage of the life cycle does testing begin in your opinion?
    Testing is a continuous process and it starts as and when the requirement for the project /product begins to be framed.
    Requirements phase: testing is done to check whether the project/product details are reflecting clients ideas or giving an idea of complete project from the clients perspective (as he wished to be) or not.
    75. What are the properties of a good requirement?
    Requirement specifications are important and one of the most reliable methods of insuring problems in a complex software project. Requirements are the details describing an application’s externally perceived functionality and properties. Requirements should be clear, complete, reasonably detailed, cohesive, attainable and testable.
    76. How do you scope, organize, and execute a test project?
    The Scope can be defined from the BRS, SRS, FRS or from functional points. It may be anything that is provided by the client. And regarding organizing we need to analyze the functionality to be covered and who will testing the modules and pros and cons of the application. Identify the number if test cases, resource allocation, what are the risks that we need mitigate all these come into picture.
    Once this is done it is very easy to execute based on the plan what we have chalked out.
    77. How would you ensure 100% coverage of testing?
    We can not perform 100% testing on any application. but the criteria to ensure test completion on a project are:
  • All the test cases are executed with the certain percentage of pass.
  • Bug falls below a certain level
  • Test budget depleted
  • Dead lines reached (project or test)
  • When all the functionalities are covered in a test cases
  • All critical & high bugs must have a status of CLOSED
  1. Do you go about testing a web application?
    Ideally to test a web application, the components and functionality on both the client and server side should be tested. But it is practically impossibleThe best approach to examine the project’s requirements, set priorities based on risk analysis, and then determine where to focus testing efforts within budget and schedule constraints.
    To test a web application we need to perform testing for both GUI and client-server architecture.
    Based on many factors like project requirements, risk analysis, budget and schedule, we can determine that what kind of testing will be appropriate for your project. We can perform unit n integration testing, functionality testing, GUI testing, usability testing, compatibility testing, security testing, performance testing, recovery testing and regression testing.
    79. What are your strengths?
    I’m well motivated, well-organized, good team player, dedicative to work and I’ve got a strong desire to succeed, and I’m always ready and willing to learn new information and skills.
    80. When should you begin testing?
    For any Project, testing activity will be there from starting onwards, After the Requirements gathering, Design Document (High and Low) will be prepared, that will be tested, whether they are confirming to requirements or not, Design then Coding- White box will be done, after the Build or System is ready, Integration followed by functional testing will be done, Till the product or Project was stable. After the product or project is stable, then testing will be stopped.
    81. When should you begin test planning?
    Test planning is done by test lead. As a test lead test planning begins when TRM is finalized by project manager and handover to the test lead. Here test lead have some responsibilities those are,
  • Testing team formation
  • identifying tactical risks
  • preparing test plan
  • Reviews on test plans
  1. Would you like to work in a team or alone, why?
    I would like to work in a team. Because the process of software development
    is like a relay race where many runners have to contribute in their respective laps. It is important because the complexity of work and degree of efforts required is beyond level of an individual.83. When should testing Start in a project? Why?
    Testing in a continuous activity carried out at every stage of the project. You first test everything that you get from the client. As tester (technical tester), my work will start as soon as the project starts.
    84. Have you ever created a test plan?
    This is just a sample answer – “I have never created any test plan. I developed and executed testcase. But I was involved/ participated actively with my Team Leader while creating Test Plans.”
    85. Define quality for me as you understand it
    It is software that is reasonably bug-free and delivered on time and within the budget, meets the requirements and expectations and is maintainable.
    86. What is the role of QA in a development project?
    Quality Assurance
    Group assures the Quality it must monitor the whole development process. they are most concentration on prevention of bugs.
    It must set standards, introduce review procedures, and educate people into better ways to design and develop products.
    87. How involved where you with your Team Lead in writing the Test Plan?
As per my knowledge Test Member are always out of scope while preparing the Test Plan, Test Plan is a higher level document for Testing Team. Test Plan includes Purpose, scope, Customer/Client scope, schedule, Hardware, Deliverables and Test Cases etc. Test plan derived from PMP (Project Management Plan). Team member scope is just go through TEST PLAN then they come to know what all are their responsibilities, Deliverable of modules.
Test Plan is just for input documents for every testing Team as well as Test Lead.
88. What processes/methodologies are you familiar with?
Methodology
  • Spiral methodology
  • Waterfall methodology. these two are old methods.
  • Rational unified processing. this is from I B M and
  • Rapid application development. this is from Microsoft office.
  1. What is globalization testing?
    The goal of globalization testing is to detect potential problems in application design that could inhibit globalization. It makes sure that the code can handle all international support without breaking functionality that would cause either data loss or display problems.90. What is base lining?
    Base lining: Process by which the quality and cost effectiveness of a service is assessed, usually in advance of a change to the service. Base lining usually includes comparison of the service before and after the Change or analysis of trend information. The term Benchmarking is normally used if the comparison is made against other enterprises.
    For example:
If the company has different projects. For each project there will be separate test plans. This test plans should be accepted by peers in the organization after modifications. That modified test plans are the baseline for the testers to use in different projects. Any further modifications are done in the test plan. Present modified becomes the baseline. Because this test plan becomes the basis for running the testing project.
91. Define each of the following and explain how each relates to the other: Unit, System and Integration testing.
Unit testing
it is a testing on each unit (program)
System testin
This is a bottleneck stage of our project. This testing done after integration of all modules to check whether our build meets all the requirements of customer or not. Unit and integration testing is a white box testing which can be done by programmers. System testing is a black box testing which can be done by people who do not know programming. The hierarchy of this testing is unit testing integration testing system testing
Integration testing: integration of some units called modules. the test on these modules is called integration testing (module testing).
92. Who should you hire in a testing group and why?
Testing is an interesting part of software cycle. and it is responsible for providing an quality product to a customer. It involves finding bugs which is more difficult and challenging. I wanna be part of testing group because of this.
  1. What do you think the role of test-group manager should be? Relative to senior management? Relative to other technical groups in the company? Relative to your staff?
    ROLES OF test-group manager INCLUDE
  • Defect find and close rates by week, normalized against level of effort (are we finding defects, and can developers keep up with the number found and the ones necessary to fix?)
  • Number of tests planned, run, passed by week (do we know what we have to test, and are we able to do so?)
  • Defects found per activity vs. total defects found (which activities find the most defects?)
  • Schedule estimates vs. actual (will we make the dates, and how well do we estimate?)
  • People on the project, planned vs. actual by week or month (do we have the people we need when we need them?)
  • Major and minor requirements changes (do we know what we have to do, and does it change?)
  1. What criteria do you use when determining when to automate a test or leave it manual?
    The Time and Budget both are the key factors in determining whether the test goes on Manual or it can be automated. Apart from that the automation is required for areas such as Functional, Regression, Load and User Interface for accurate results.95. How do you analyze your test results? What metrics do you try to provide?
    Test results are analyzed to identify the major causes of defect and which is the phase that has introduced most of the defects. This can be achieved through cause/effect analysis or Pareto analysis. Analysis of test results can provide several test matrics. Where matrices are measure to quantify s/w, s/w development resources and s/w development process. Few matrices which we can provide are:
    Defect density: total no of defects reported during testing/size of project
    Test effectiveness’/(t+uat)
    where t: total no of defect recorded during testing
    and UAT: total no of defect recorded during use acceptance testing
    Defect removal efficiency(DRE): (total no of defect removed / total no of defect injected)*100
    96. How do you perform regression testing?
    Regression Testing is carried out both manually and automation. The automatic tools are mainly used for the Regression Testing as this is mainly focused repeatedly testing the same application for the changes the application gone through for the new functionality, after fixing the previous bugs, any new changes in the design etc. The regression testing involves executing the test cases, which we ran for finding the defects. Whenever any change takes place in the Application we should make sure, the previous functionality is still available without any break. For this reason one should do the regression testing on the application by running/executing the previously written test cases.
    97. Describe to me when you would consider employing a failure mode and effect analysis
    FMEA (Failure Mode and Effects Analysis) is a proactive tool, technique and quality method that enables the identification and prevention of process or product errors before they occur. Failure modes and effects analysis (FMEA) is a disciplined approach used to identify possible failures of a product or service and then determine the frequency and impact of the failure.
    98. What is UML and how to use it for testing?
    The Unified Modeling Language is a third-generation method for specifying, visualizing, and documenting the artifacts of an object-oriented system under development From the inside, the Unified Modeling Language consists of three things:
  • A formal metamodel
  • A graphical notation
  • A set of idioms of usage
  1. What you will do during the first day of job?
    In my present company HR introduced me to my colleagues. and i known the following things.
  • What is the organization structure?
  • What is the current project developing, on what domain etc.,
  • I will know to whom i have to report and what r my other responsibilities.
  1. What is IEEE? Why is it important?
    Organization of engineers Scientists and students involved in electrical, electronics, and related fields. It is important because it functions as a publishing house and standards-making body.101. Define Verification and Validation. Explain the differences between the two.
    Verification– Evaluation done at the end of a phase to determine that requirements are established during the previous phase have been met. Generally Verification refers to the overall s/w evaluation activity, including reviewing, inspecting, checking and auditing.
    Validation:– The process of evaluating s/w at the end of the development process to ensure compliance with requirements. Validation typically involves actual testing and takes place after verification is complete.
    Or
    Verification: Whether we are building the product right?
    Validation:Whether we are building the right product/System?
    102. Describe a past experience with implementing a test harness in the development Of software
    Harness: an arrangement of straps for attaching a horse to a cart.
    Test Harness: This class of tool supports the processing of tests by working it almost painless to
  • Install a candidate program in a test environment
  • Feed it input data
  • Simulate by stubs the behavior of subsidiary modules.
  1. What criteria do you use when determining when to automate a test or leave it manual?
    The Time and Budget both are the key factors in determining whether the test goes on Manual or it can be automated. Apart from that the automation is required for areas such as Functional, Regression, Load and User Interface for accurate results.104. What would you like to do five years from now?
    I would like to be in a managerial role, ideally working closely with external clients. I have worked in client-facing roles for more than two years and I enjoy the challenge of keeping the customer satisfied. I think it’s something I’m good at. I would also like to take on additional responsibility within this area, and possibly other areas such as  Finally, I’d like to be on the right career path towards eventually becoming a Senior Manager within the company. I’m very aware that these are ambitious goals, however I feel through hard work
    and dedication they are quite attainable.
    105. Define each of the following and explain how each relates to the other: Unit, System, and Integration testing
  • Unit system comes first. Performed by a developer.
  • Integration testing comes next. Performed by a tester
  • System testing comes last-Performed by a tester.
  1. What is IEEE? Why is it important?
“Institute of Electrical & Electronic Engineers” Organization of engineers, scientists and students involved in electrical, electronics, and related fields. It also functions as a publishing house and standards-making body.
  1. What is the role of QA in a company that produces software?
The role of the QA in the company is to produce a quality software and to ensure that it meets all the requirements of its customers before delivering the product.
  1. How would you build a test team?
Building a test team needs a number of factors to judge. Firstly, you have to consider the complexity of the application or project that is going to be tested. Next testing, time allotted levels of testing to be performed. With all these parameters in mind you need to decide the skills and experience level of your testers and how many testers.
  1. In an application currently in production, one module of code is being modified. Is it necessary to re- test the whole application or is it enough to just test functionality associated with that module?
It depends on the functionality related with that module. We need to check whether that module is inter-related with other modules. If it is related with other modules, we need to test related modules too. Otherwise, if it is an independent module, no need to test other modules.
  1. What are ISO standards? Why are they important?
ISO 9000 specifies requirements for a Quality Management System overseeing the production of a product or service. It is not a standard for ensuring a product or service is of quality; rather, it attests to the process of production, and how it will be managed and reviewed.
For ex a few:
ISO 9000:2000
Quality management systems. Fundamentals and vocabulary
ISO 9000-1:1994
Quality management and quality assurance standards. Guidelines for selection and use
ISO 9000-2:1997
Quality management and quality assurance standards. Generic guidelines for the application of ISO 9001, ISO 9002 and ISO 9003
ISO 9000-3:1997
Quality management and quality assurance standards. Guidelines for the application of ISO 9001:1994 to the development, supply, installation and maintenance of computer software
ISO 9001:1994
Quality systems. Model for quality assurance in design, development, production, installation and servicing
ISO 9001:2000
Quality management systems. Requirements
  1. What is the Waterfall Development Method and do you agree with all the steps?
Waterfall approach is a traditional approach to the s/w development. This will work out of it project is a small one (Not complex).Real time projects need spiral methodology as SDLC. Some product based development can follow Waterfall, if it is not complex. Production cost is less if we follow waterfall method.
  1. What is migration testing?
Changing of an application or changing of their versions and conducting testing is migration testing. Testing of programs or procedures used to convert data from existing systems for use in replacement systems.
  1. What is terminology? Why testing Necessary fundamental test process psychology of testing Testing Terminologies
    Error: a human action that produces an incorrect result.Fault: a manifestation of an error in software.
    Failure: a deviation of the software from its expected delivery or service.
    Reliability: the probability that the software will not cause the failure of the system for a specified time under specified conditions.
    Why Testing is Necessary
    Testing is necessary because software is likely to have faults in it and it is better (cheaper, quicker and more expedient) to find and remove these faults before it is put into live operation. Failures that occur during live operation are much more expensive to deal with than failures than occur during testing prior to the release of the software. Of course other consequences of a system failing during live operation include the possibility of the software supplier being sued by the customers!
    Testing is also necessary so we can learn about the reliability of the software (that is, how likely it is to fail within a specified time under specified conditions).
  2. What is UAT testing? When it is to be done?
UAT stands for ‘User acceptance Testing’ This testing is carried out with the user perspective and it is usually done before a release
UAT stands for User Acceptance Testing. It is done by the end users along with testers to validate the functionality of the application. It is also called as Pre-Production testing.
  1. How to find that tools work well with your existing system?
I think we need to do a market research on various tools depending on the type of application we are testing. Say we are testing an application made in VB with an Oracle Database, and then Win runner is going to give good results. But in some cases it may not, say your application uses a lots of 3rd party Grids and modules which have been integrated into the application. So it depends on the type of application u r testing.
Also we need to know what sort of testing will be performed. If u need to test the performance, u cannot use a record and playback tool, u need a performance testing tool such as Load runner.
  1. What is the difference between a test strategy and a test plan?
TEST PLAN: IT IS PLAN FOR TESTING.IT DEFINES SCOPE, APPROACH, AND ENVIRONEMENT.
TEST STRATEGY: A TEST STRATEGY IS NOT A DOCUMENT.IT IS A FRAMEWORK FOR MAKING DECISIONS ABOUT VALUE.
  1. What is Scenarios in term of testing?
Scenario means development. We define scenario by the following definition: Set of test cases that ensure the business process flows are tested from end to end. It may be independent tests or a series of tests that follow each other, each dependant on the output of the previous one. The term test scenario and test case are often used synonymously.
  1. Explain the differences between White-box, Gray-box, and Black-box testing?
Black box testingTests are based on requirements and functionality. Not based on any knowledge of internal design or code.
White box testing Tests are based on coverage of code statements, branches, paths, conditions. Based on knowledge of the internal logic of an application’s code.
Gray Box Testing A Combination of Black and White Box testing methodologies, testing a piece of software against its specification but using some knowledge of its internal workings.
  1. What is structural and behavioral Testing?
Structural Testing
It is basically the testing of code which is called white box testing.
Behavioral Testing
It is also called functional testing where the functionality of software is being tested. This kind of testing is called black box testing.
Structural Testing
It’s a White Box Testing Technique. Since the testing is based on the internal structure of the program/code & hence it is called as Structural Testing.
Behavioral Testing:
It’s a Black Box Testing Technique. Since the testing is based on the external behavior/functionality of the system /application & hence it is called as Behavioral Testing.
  1. How does unit testing play a role in the development / Software lifecycle?
We can catch simple bugs like GUI, small functional Bugs during unit testing. This reduces testing time. Overall this saves project time. If developer doesn’t catch this type of bugs, this will come to integration testing part and if it catches by a tester, this need to go through a Bug life cycle and consumes a lot of time.
  1. What made you pick testing over another career?
    Testing is one aspect which is very important in the Software Development Life Cycle (SDLC). I like to be part of the team which is responsible for the quality of the application being delivered. Also, QA has broad opportunities and large scope for learning various technologies. And of course it has lot more opportunities than the Development.

1 comment:

  1. Lucky Club: The Best Casino Site for UK Players
    The Lucky Club is the best luckyclub.live place to gamble online for UK players. Enjoy live dealer games, online slots, and live poker tournaments,  Rating: 4.2 · ‎Review by LuckyClub

    ReplyDelete