Interview Questions, Answers and Tutorials

Blog

Software Testing Dictionary -5

High-level tests. These tests involve testing whole, complete products [Kit, 1995] Inspection A formal evaluation technique in which software requirements, design, or code are examined in detail by a person or group other than the author to detect faults, violations of development standards, and other problems [IEEE94]. A quality improvement process for written material that consists of two dominant components: product (document) improvement and process improvement (document production and inspection). Integration The process of combining software components or hardware components or both into an overall system. Integration testing – testing of combined parts of an application to determine if they…

V Model

V & V PROCESS MODEL :  V&V Model is Verification & Validation Model. In This Model, We work simultaneously on Development and Testing. In this Model One V for Verification and one For Validation first ‘V,’ we follow SDLC(Software Development Life Cycle), and Second ‘V’ we follow STLC-(Software Testing Life Cycle).  Testing normally done in a large system in 2 parts. The functional verification and validation against the Requirement specification and Performance evaluation against the indicated requirements.  Testing activity is involved right from the beginning of the project. The use of the V&V process model increases the rate of success…

Software Testing Dictionary -1

Acceptance Test: – Formal tests (often performed by a customer) to determine whether or not a system has satisfied predetermined acceptance criteria. These tests are often used to enable the customer (either internal or external) to determine whether or not to accept a system. Ad Hoc Testing: – Testing carried out using no recognized test case design technique. [BCS]   Alpha Testing: – Testing of a software product or system conducted at the developer’s site by the customer.   Artistic Testing: – Also known as Exploratory testing.   Assertion Testing. (NBS)A dynamic analysis technique that inserts assertions about the relationship…

Software Testing Dictionary -4

  Failure: A failure is a deviation from expectations exhibited by software and observed as a set of symptoms by a tester or user. A failure is caused by one or more defects. The Causal Trail. A person makes an error that causes a defect that causes a failure.[Robert M. Poston, 1996]   Fix testing. Rerunning of a test that previously found the bug in order to see if a supplied fix works. [Scott Loveland, 2005]   Follow-up testing, we vary a test that yielded a less-than-spectacular failure. We vary the operation, data, or environment, asking whether the underlying fault in the…

Software Testing Dictionary -3

    End-to-End testing. Similar to system testing; the ‘macro’ end of the test scale; involves 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.   Equivalence Partitioning: An approach where classes of inputs are categorized for product or function validation. This usually does not include combinations of input, but rather a single state value-based by class. For example, with a given function there may be several classes of input that may be used for positive testing. If…

Software Testing Dictionary -2

  Data-Driven testing An automation approach in which the navigation and functionality of the test script is directed through external data; this approach separates test and control data from the test script. [Daniel J. Mosley, 2002]   Data flow testing Testing in which test cases are designed based on variable usage within the code.[BCS]   Database testing. Check the integrity of database field values. [William E. Lewis, 2000]   Defect The difference between the functional specification (including user documentation) and actual program text (source code and data). Often reported as a problem and stored in defect-tracking and problem-management system   Defect Also called a…

Software Testing in Agile

  Agile means being able to quickly change direction. Agile software development is a group of software development methodologies. Agile software development methods: 1. Agile Modeling 2. Agile Unified Process (AUP) 3. Dynamic Systems Development Method (DSDM) 4. Essential Unified Process (EssUP) 5. Extreme Programming (XP) 6. Feature Driven Development (FDD) 7. Open Unified Process (OpenUP) 8. Scrum 9. Velocity tracking Agile method: Scrum (development) Scrum is an iterative incremental process of software development commonly used with agile software development. Software developed during one unit of time is referred to as an iteration, which typically lasts from two to four…

Having Other People Test Your Software

  In one minute, try to find as many differences between the two scenes as you can. After you finish looking, have several friends do the same. What you’ll find is that everyone has very different results. The number of differences found in the order that they were found, even which ones were found will be different. Combine all the lists and throw out the duplicates, you’ll have a complete list. Software testing works exactly the same way. You’re likely under a tight schedule, you find as many bugs as possible in the time you have, but someone else can…

Difference Between System Testing and End-to-End Testing

End-to-End Testing:- Similar to system testing, but involves the testing of complete application environment such as interacting with a database, using network communications, interacting with other hardware, application or systems if appropriate. System Testing:- System Testing is the testing of a system as a whole. This is what users see and feel about the product you provide.

Bug Life Cycles

Various life cycles that a bug passes through during a software testing process have been described in this article. Take a look. The duration of the time span between the first time that the bug is found is called ‘New’ and closed successfully (status: ‘Closed’), rejected, postponed, or deferred is called ‘Bug/Error Life Cycle’. Right from the first time any bug is detected till the point when the bug is fixed and closed, it is assigned various statuses which are New, Open, Postpone, Pending Retest, Retest, Pending Reject, Reject, Deferred, and Closed. There are seven different life cycles that a…