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.
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.
Data Objects: An input or output that is user visible. Data Objects are document objects consisting of factual information normally arranged into datafiles (1.2.10) or tables (1.2.10.1) which are used as a basis for reasoning, discussion, or calculation.
Debugging: Debugging is a methodical process of finding and reducing the number of bugs, or defects, in a computer program or a piece of electronic hardware thus making it behave as expected.
Desk-checking: Checking source code created with an editor before compiling it to check for typographical and other errors.
Domain: Domain of a variable is a (mathematical) set that includes all possible values of a variable of a function.
Dynamic testing: Dynamic Testing (or dynamic analysis) is testing software through executing it. A term used in software engineering to describe the testing of the dynamic behavior of code.
Formal Inspections: (Also known as Fagan Inspection) Formal Inspection refers to a structured process of trying to find defects in development documents, programming code, specifications, designs and others artifacts during various phases of the software development program.
Fagan Inspection is a group review method used to evaluate output of a given process.
Firmware: Firmware is a term sometimes used to denote the fixed, usually rather small, programs that internally control various electronic devices. Typical examples range from end-user products such as remote controls or calculators
Language Processor: A program that performs tasks, such as translating and interpreting, required for processing a specified programming language. Note: Examples of language processors include a Fortran processor and a COBOL processor.
Pachinko Code: Pachinko is a japanese gaming device (for gambling) used for amusement and prizes. Pachinko code as the name implies, is not predictable and not testable.
Path Sensitizing: Choosing a set of input values to force the execution of a component to take a given path.
Predicate: A logical expression which evaluates to TRUE or FALSE, normally to direct the execution path in code.
Regression (Software): A software regression is a software bug which makes a feature stop functioning as intended after a certain event (for example, a system upgrade, system patching or a change to daylight saving time).
Software Quality Assurance:
Software testing is a process used to identify the correctness, completeness and quality of developed computer software.
Spaghetti code: Unstructured, or poorly structured program source code; especially code with many GOTO statements (or their equivalent).
Static testing: Static testing (Static Analysis) takes place without running an application or its modules. It can include source code reviews, code inspections, and software walkthroughs.
Structured programming: A style of programming in which the programmer divides his program's source code into logically structured chunks of code.
Test Case:
The specification (usually formal) of a set of test inputs, execution conditions, and expected results, identified for the purpose of making an evaluation of some particular aspect of a Target Test Item.
Unachievable Path:
A functionally meaningful processing path in the code for which there is no combination of input values that will force that path to be executed.
Unreachable Code:
Code for which there is no combination of input values that will cause the code to be executed.
Walk-throughs:
The process of inspecting algorithms and source code by following paths through the algorithms or code as determined by input conditions and choices made along the way.
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
|