Software Testing is a study to enable interested parties information on the quality of the product or service to be tested. Software Testing provides an objective, independent view of the software to assess the economy and understand the risks to the implementation of the software. analysis techniques include, but are not limited to, the process of executing a program or application with the intent of finding bugs in the software.
Test software can be used as the process of validation and verification that the software / application / product will be indicated:
1 are technical and business requirements that guide the design and development;
2nd works as expected, and
3 May be performed with the same characteristics.
Software Testing, depending on the method used can always be put into the development process. However, most of the stress test comes after the conditions have been defined and the coding is completed. declared as such, the methodology used by the software development methodology is adopted.
Different models of software development, stress test at different points in the center of the development process. new development models like Agile, which often use the test-driven development and place a greater share of control in the hands of developers before coming to a team official testers. In a more traditional model, most of the criteria after the conditions have been defined and the coding is completed.
View
Tests may never completely identify defects in software. Instead, it provides a criticism or comparison that compares the state and behavior of the product against oracles, principles or mechanisms by which a person can recognize a problem. These oracles may include (but are not limited to) specifications, contracts, [2] comparable products, earlier versions of the same product, results or destination, the user or customer expectations, relevant standards, laws , or other criteria.
Each program has a target audience. For example, the audience of video game software is completely different from banking software. Therefore, when an organism develops or otherwise invests in a software product, you can assess whether the software product is acceptable for its end users, its audience, its purchasers, and others. Software Testing is the process of trying to make this assessment.
A study conducted by NIST in 2002 reports that software bugs cost the U.S. economy 59.5 billion U.S. dollars annually. More than one third of that cost could be avoided if the test was run better software.
topics of software testing
Scope
A major objective of the trial is to detect faults in software so that defects can be detected and corrected. This is a nontrivial exercise. The evidence can not establish that a product works properly in all conditions, but can not prove it does not work correctly under certain conditions. [12] The scope of software testing often includes a review of the code and run the code in various environments and conditions and considering aspects of code should do what he must do and what to do. In contemporary culture, software development, a testing can be separated from the development team. There are different roles for testing team members. Information obtained from the test software can be used to correct the process by which software is developed .
Functional testing and non functional
Functional testing includes tests that verify an action or a specific function code. They are usually found in the documentation requirements of the Code, although some methods work by developing use cases or user stories. Functional tests tend to answer the question "you can do this" or "special feature that does not work.
Test refers to non-functional aspects of software that can not be connected to a function or a user action, such as scalability or security. Non-functional testing tends to answer questions like "How many people can connect to both 'or' How easy is to hack the software.
The defects and faults
Not all software defects are caused by coding errors. A common source of costly defects are caused by poor condition, for example, did not need, resulting in errors of omission by the designer of the program. A common source of the requirements of gaps are non-functional requirements such as testability, scalability, maintainability, usability, performance and safety.
bugs in software is made by the following processes. A programmer makes an error (error), which causes a defect (error, error) in the source code of the software. If the fault is executed, in some situations, the system will produce incorrect results, causing a failure. Not all defects will necessarily lead to failures. For example, the defects of dead code will never lead to failures. A defect may become a failure when the environment has changed. Examples of these changes in the environment includes the software running on a platform of new hardware, changes to the data source or to interact with different software. A single failure can cause a wide range of symptoms of deficiency.
And 'commonly accepted that the first is a defect, it is more convenient to solve the problem. The following table shows the cost of fixing the defect in the second phase was found. For example, if a problem requirements can only be found after the release, so that it would cost 10-100 times more to resolve than if it had been found by examining the requirements.
Static and dynamic test
There are many methods of software testing. Reviews, walkthroughs, or inspections are considered static tests, when in fact the execution of code programmed with a set of test cases is called dynamic test. Static testing can be (and, unfortunately, in practice, is often) failed. dynamic testing takes place when the program is used for the first time (which is generally considered the beginning of testing). Dynamic tests can begin before the program is 100% complete in order to test sections of code (modules or discrete functions). techniques typical of this situation are linked to both a / drivers or construction of a debugger environment. For example, the sheets are by their very nature, largely tested interactively (on-the-fly), with results published immediately after each calculation or manipulation of the text.
verification and validation software
software testing is used in combination with verification and validation:
* Verification: we're building the right software? (In this case, no longer meets the specifications).
* Validation: we built the right software? (That is, this is what the customer wants).
Verification and validation of the terms are commonly used interchangeably in the industry, is also common to see these two words incorrectly defined. According to the glossary of the terminology of the IEEE Software Engineering:
Verification is the process of evaluating a system or component to determine if the products in a development phase in the conditions imposed at the beginning of this phase.
Validation is the process of evaluating a system or component during or at the end of the development process to determine whether it satisfies specified requirements.
Tuesday, April 6, 2010
Phases of Software Testing
Posted by QTP FAQ's Jobs interview questions at 1:31 PM 1 comments
Labels: software testing, testing phases
Subscribe to:
Posts (Atom)