SE 2 TEST 1

Pataasin ang iyong marka sa homework at exams ngayon gamit ang Quizwiz!

Load testing:

Aka endurance testing or volume testing. Under this testing, a constantly and steadily increasing load is applied on the system till it reaches the threshold limit. This test mainly determines the system on its robustness and error handling under extremely heavy load conditions. -Main objective of load testing is to identify the defects that affect the application's performance negatively. The defects can be related to memory leak, memory mismanagement or buffer overflow.

Stress testing

Is done to decide the level of stress required to break down a system. During festival time, an online shopping site may witness a spike in traffic, or when it announces a sale. - performed to check the behavior of an application after its failure.

Equivalence partitioning:

It is a software test design technique that involves dividing input values into valid and invalid partitions and selecting representative values from each partition as test data.

Cause-Effect Graphing:

It is a software test design technique that involves identifying the cases (input conditions) and effects (output conditions), producing a Cause-Effect Graph, and generating test cases.

Boundary Value Analysis:

It is a software test design technique that involves the determination of boundaries for input values and selecting values that are at the boundaries and just inside/ outside of the boundaries as test data.

Black box testing/ behvioral testing

It is a software testing method in which the internal structure/design/implementation of the item being tested is not known to the tester.

recovery testing

It is the forced failure of the software in a variety of ways to verify that recovery is properly performed.

Big Bang Advantages

Makes sense when you need to test small systems. all integrations are done before starting the integration tests

Regression Testing

Re-execution of some subset of tests that have already been conducted to ensure that changes have not propagated unintended side effects. -Regression testing helps to ensure that changes (due to testing or for other reasons) do not introduce unintended behavior or additional errors.

Exhaustive testing

Test approach in which all possible data combinations are used testing. Exploratory testing includes implicit data combinations present in the state of the software/ data at the start of testing.

Software Testing

Testing is the process of exercising a program with the specific intent of finding errors prior to delivery to the end user.

Operability

The better it works, the most efficiently it can be tested

Controllability

The better we can control the software, the more the testing can be automated and optimized.

Acceptance testing

The customer performs a series of specific tests in an attempt to uncover errors before accepting the software from the developer.

Cyclomatic complexity

The number of independent paths in the basis set of a program provides an upper bound for the number of tests that must be conducted to ensure that all statements have been executed at least once.

Simplicity

The program should exhibit functional simplicity (e.g., the feature set is the minimum necessary to meet requirements); structural simplicity (e.g., architecture is modularized to limit the propagation of faults), and code simplicity (e.g., a coding standard is adopted for ease of inspection and maintenance).

Integration testing

To verify whether the functional and non functional behaviors of the interfered are as designed and specified, to build confidence in the quality of the interfaces, to find defects

White box: branch testing

Uses a model of the program's flow nit is designed in order to execute (each) outcome of all or selected decision points in a test object

Observability

What you see is what you test. Inputs provided as part of testing produce distinct outputs. System states and variables are visible or queriable during execution.

stress testin

executes a system in a manner that demands resources in abnormal quantity, frequency, or volume

Deployment testing

exercises the software in each environment in which it is to operate

Stability

few changes are requested during testing

Alpha beta testing

focus is on customer usage

system testing

focus is on system integration

Good Test

has high probability of finding an error, not redundant, should be best of breed, should not be too simple or complex

server side application security

involves making sure that the server code and its technologies are robust enough to fend off any intrusion

System testing

is the testing of a complete and fully integrated software product

Compound logic

nA separate node is created for each of the conditions a and b in the statement IF a OR b. Each node that contains a condition is called a predicate node and is characterized by two or more edges emanating from it.

Validation testing

nValidation testing is the process of ensuring if the tested and developed software satisfies the client /user needs. The business requirement logic or scenarios have to be tested in detail. All the critical functionalities of an application must be tested here.

Validation

refers to a different set of tasks that ensure that the software that has been built is traceable to customer requirements. "Are we building the right product?"

Verification

refers to the set of tasks that ensure that software correctly implements a specific function "Are we building the product right?"

Attribute of performance testing

speed, scalability, stability, reliability

performance testing

test the run time performance of software within the context of an integrated system

Understandability

the more information we have, the smarter we will test

Errors often occur when:

the nth element of an n dimensional array is processed, when the ith repetition of a loop with i passes is invoked, when the max or min allowable value is encountered

system software security

this involves assessing weaknesses in the various software

security testing

verifies that protection mechanisms built into the system will protect it from improper penetration

White box testing (structural)

•Goal is to ensure that all statements and conditions have been executed at least once •The focus is not design or implementation •The focus is on the logic of implementation

Basis path testing

Basis path testing, a structured testing or white box testing technique used for designing test cases intended to examine all possible paths of execution at least once. Creating and executing tests for all possible paths results in 100% statement coverage and 100% branch coverage.

Decomposability

By controlling the scope of testing, we can more quickly isolate problems and perform smarter retesting. The software system is built from independent modules that can be tested independently.

client side application security

deals with ensuring that the client cannot be manipulated

Stubs

- used in top down integration -stubs are used when sub programs are under development -top most module is tested first -it can simulate the behavior of lower level modules that are not integrated - called programs

Strategic Approach

-Conduct effective technical reviews, test, debug

Big Bang Disadvantages

-Consumes the integration testing time -this technique is not relevant to large and complex systems - very difficult to trace the root cause of failures (interfaces are not isolated during the tests)

Top Down cons

-Drivers are more difficult to write than stub -Design defects are caught in the later stage nIn this approach, we do not have working application until the last module is built

Top down pros:

-Early exposure of architecture defects -It outlines the working of an application as a whole in early stages and helps in early disclosure of design defects -Main control points are tested early

Sandwhich testing strategy Cons

-Higher cost due to involvement of both top-down and bottom-up testing methodology -This type of testing is not advised for a system where modules are highly inter-dependent

Sandwich testing strategy

-In this approach a system is integrated using a mix of top-down, bottom-up, and big-bang approaches -A hierarchical system is viewed as consisting of three layers -The bottom-up approach is applied to integrate the modules in the bottom-layer -The top layer modules are integrated by using top-down approach -The middle layer is integrated by using the big-bang approach after the top and the bottom layers have been integrated

Bottom up integration

-Low-level components are combined into clusters (sometimes called builds) that perform a specific software subfunction. -A driver (a control program for testing) is written to coordinate test case input and output. -The cluster is tested. -Drivers are removed and clusters are combined moving upward in the program structure.

Top down Cons

-Significant modules are tested late in cycle nIt is very challenging to write test conditions -A stub is not a perfect implementation of related Module. It just simulates the data flow between two modules

Top Down Integration

-The main control module is used as a test driver and stubs are substituted for all components directly subordinate to the main control module. -Depending on the integration approach selected (i.e., depth or breadth first), subordinate stubs are replaced one at a time with actual components. -Tests are conducted as each component is integrated. -On completion of each set of tests, another stub is replaced with the real component. nRegression testing (discussed later in this section) may be conducted to ensure that new errors have not been introduced.

Bottom down pros

-To start testing at the bottom level of hierarchy means testing of critical modules or functionality at an early stage. This helps in early discovery of errors -More useful for integrating object-oriented systems

White box

-Using the white-box testing techniques, a software engineer can design test cases that -exercise independent paths within a module or unit; -exercise logical decisions on both their true and false side; -execute loops at their boundaries and within their operational bounds -exercise internal data structures to ensure their validity

Drivers

-used in bottom up integration testing -used when main programs are under development -lowest module is tested first -it can simulate the behavior of upper level modules that are not integrated

Smoke testing

A common approach for creating "daily builds" for product software. -Smoke testing steps: nSoftware components that have been translated into code are integrated into a "build." •A build includes all data files, libraries, reusable modules, and engineered components that are required to implement one or more product functions. nA series of tests is designed to expose errors that will keep the build from properly performing its function. •The intent should be to uncover "show stopper" errors that have the highest likelihood of throwing the software project behind schedule. nThe build is integrated with other builds and the entire product (in its current form) is smoke tested daily. •The integration approach may be top down or bottom up.

Big Bang approach

Combining all the modules once and verifying the functionality after completion of individual module testing. - 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.

Boundary value analysis

Is a technique to refine equivalence partitioning, Concentrate on cases at the extreme ends of each equivalence class.

Validation Testing

Focus is on software requirements

Network security

Involves looking for vulnerabilities in the network infrastructure

Independent tester

Must learn about the system but will attempt to break it and is driven by quality.

Developer

Understands the system but will test gently and is driven by delivery

beta test

conducted at one or more end user sites. the developer is not present

Alpha test

conducted at the developers site by a representaive group of end users


Kaugnay na mga set ng pag-aaral

Micro 202 Exam practice questions

View Set

Prectice Questions NDEE RENAL ADAPTIVE QUESTIONS N3

View Set

Ap Human Geography Chapter 7 Key Issues 3+4

View Set

6 Managing in the Global Environment exercise

View Set

UNIT 20: PUNK, NEW WAVE & ALTERNATIVE ROCK

View Set