Tuesday, 22 December 2015

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.

Monday, 21 December 2015

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.

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.

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.

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"

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.

What can be thought of as being based on the project plan, but with greater amounts of detail?

Phase Test Plan

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

What does COTS represent?

Commercial off The Shelf.

What is Fault Masking?

Error condition hiding another error condition.

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.

What is Coverage measurement?

It is a partial measure of test thoroughness.

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

In which order should tests be run?

The most important one must tests first

"This life cycle model is basically driven by schedule and budget risks" This statement is best suited for…

V-Model

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

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

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

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

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

What is the purpose of test design technique?

Identifying test conditions and Identifying test cases

What is the main purpose of Informal review

Inexpensive way to get some benefit

Who is responsible for document all the issues, problems and open point that were identified during the review meeting

Scribe

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.

What is a failure?

Failure is a departure from specified behaviour.

What is Alpha testing?

Pre-release testing by end user representatives at the developer's site.

What studies data flow analysis?

The use of data on paths through the code.

How would you estimate the amount of re-testing likely to be required?

Metrics from previous similar projects and discussions with the development team

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

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

Why we split testing into distinct stages?

We split testing into distinct stages because of following reasons,
 Each test stage has a different purpose
 It is easier to manage testing in stages
 We can run different test into different environments
Performance and quality of the testing is improved using phased testing

The purpose of requirement phase is

To freeze requirements, to understand user needs, to define the scope of testing

During which test activity could faults be found most cost effectively?

During test planning

What is called the process starting with the terminal modules?

Bottom-up integration

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.

Why is incremental integration preferred over "big bang" integration?

Because incremental integration has better early defects screening and isolation ability

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.

What is maintenance testing?

Triggered by modifications, migration or retirement of existing software

What is a V-Model?

A software development model that illustrates how testing activities integrate with software development phases

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.

What makes an inspection different from other review types?

It is led by a trained leader, uses formal entry and exit criteria and checklists.

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.

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.

Which of the following is the review participant who has created the item to be reviewed?

Author

Which is the current formal world-wide recognized documentation standard?

There isn't one.

Faults found should be originally documented by whom?

By testers.

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

Which review is normally used to evaluate a product to determine its suitability for intended use and to identify discrepancies?

Technical Review.

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
 Equivalence Partitioning
Boundary value analysis
Cause effect graphing

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

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.

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.

Friday, 18 December 2015

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.
 Deadlines (Testing, Release)
Test budget has been depleted
Bug rate fall below certain level
Test cases completed with certain percentage passed
 Alpha or beta periods for testing ends
Coverage of code, functionality or requirements are met to a specified point

"How much testing is enough?"

The answer depends on the risk for your industry, contract and special requirements.

What is the one Key reason why developers have difficulty testing their own work?

Lack of Objectivity

To test a function, what has to write a programmer, which calls the function to be tested and passes it test data.

Driver

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.

Output comparator

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

Could reviews or inspections be considered part of testing?

Yes, because both help detect faults and improve quality.

What type of review requires formal entry and exit criteria, including metrics?

Inspection

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.

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.

What can static analysis NOT find?

For example memory leaks.

What is the purpose of a test completion criterion?

The purpose of test completion criterion is to determine when to stop testing

What 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.

When "Regression Testing" should be performed?

After the software has changed or when the environment has changed Regression testing should be performed.

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.

Testing activity which is performed to expose defects in the interfaces and in the interaction between integrated components is?

Integration Level Testing

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

A Type of functional Testing, which investigates the functions relating to detection of threats, such as virus from malicious outsiders?

Security Testing

When should configuration management procedures be implemented?

During test planning.

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.

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

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: 
Planning
Kick-off
Preparation
Review meeting
Rework
Follow-up.

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.

Consider the following techniques. Which are static and which are dynamic techniques?

Equivalence Partitioning.
 Use Case Testing.
Data Flow Analysis.
Exploratory Testing.
Decision Testing.
 Inspections.
Data Flow Analysis and Inspections are static; Equivalence Partitioning, Use Case Testing, Exploratory Testing and Decision Testing are dynamic.

Which of the following are valid objectives for incident reports?

Provide developers and other parties with feedback about the problem to enable identification, isolation and correction as necessary.
Provide ideas for test process improvement.
 Provide a vehicle for assessing tester competence. Provide testers with a means of tracking the quality of the system under test.

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.

What is typically the MOST important reason to use risk to drive testing efforts?

Because testing everything is not feasible.

Which activity in the fundamental test process includes evaluation of the testability of the requirements and system?

'Test Analysis' and 'Design' includes evaluation of the testability of the requirements and system.

What are the different Methodologies in Agile Development Model?

There are currently seven different agile methodologies that I am aware of:
 Extreme Programming (XP)
Scrum
 Lean Software Development
Feature-Driven Development
Agile Unified Process
Crystal
 Dynamic Systems Development Model (DSDM)

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.

What are the benefits of Independent Testing?

Independent testers are unbiased and identify different defects at the same time.

What is functional system testing?

Testing the end to end functionality of the system as a whole is defined as a functional system testing.

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

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

We use the output of the requirement analysis, the requirement specification as the input for writing …

User Acceptance Test Cases

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

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.

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.

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

What is beta testing?

Testing performed by potential customers at their own locations.

As part of which test process do you determine the exit criteria?

The exit criteria is determined on the bases of 'Test Planning'.

What is the benefit of test independence?

It avoids author bias in defining effective tests.

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.

What is the MAIN objective when reviewing a software deliverable?

To identify defects in any software work product.

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

What determines the level of risk?

The likelihood of an adverse event and the impact of the event determine the level of risk.

What is the purpose of exit criteria?

The purpose of exit criteria is to define when a test level is completed.

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.

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

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.

What is the MAIN benefit of designing tests early in the life cycle?

It helps prevent defects from being introduced into the code.