Академический Документы
Профессиональный Документы
Культура Документы
STLC - Definition
The course of software being tested in a well-planned way is known as Software test life cycle.
Requirement analysis Requirement Review Test Planning Test Case Design
Product Delivery
Retest Defects
Defect Reporting
Test Execution
Analysis:
Process: Analyzing software for design and implementation methods and testable aspects are recorded Documents involved:
Requirement Specification documents( SRS) Functional Specification documents (FSD) Design Specification documents (use cases, etc) Use case Documents Test Trace-ability Matrix for identifying Test Coverage
Review:
Process Initial review of requirements to check completeness and correctness Documents involved:
Planning:
Test Scope, Test Environment Different Test phase and Test Methodologies Manual and Automation Testing Defect Mgmt, Configuration Mgmt, Risk Mgmt. Etc Evaluation & identification Test, Defect tracking tools Documents Involved:
design
Process:
Test Traceability Matrix and Test coverage Test Scenarios Identification & Test Case preparation Test data and Test scripts preparation Test case reviews and Approval Base lining under Configuration Management Test Plan, RTM Test cases
Documents Involved:
Execution:
Process:
Executing Test cases Testing Test Scripts Capture, review and analyze Test Results Raising the defects and tracking for its closure Test Cases Test Execution report Bug report Requirement traceability matrix
Documents Involved:
Reporting
Process:
Defect logging Assigning defect and fixing Retesting Defect closing Test Summary report Bug Report
Documents involved:
Delivery
Process:
After the product had undergone several tests, the acceptance test is done by the user/client i.e. UAT, wherein the use cases were executed and the product is accepted to go on live Test Metrics and process Improvements made Build release Receiving acceptance Test summary reports UAT Test Plan, UAT Test cases
Documents involved
Risk Analysis
A
risk is a potential for loss or damage to an Organization from materialized threats. Risk Analysis attempts to identify all the risks and then quantify the severity of the risks Identification
Risk
Software Risks Business Risks Testing Risks Premature Release Risk Risk Methods
10
Risk Analysis
Software
continued
Risks
Knowledge of the most common risks associated with Software development, and the platform you are working on
Business
Risks
Most common risks associated with the business using the Software
Testing
Risks
Knowledge of the most common risks associated with Software Testing for the platform you are working on, tools being used, and test methods being applied
11
Risk Analysis
Premature
continued
Release Risk
Ability to determine the risk associated with releasing unsatisfactory or untested Software Products
Risk
Methods
Strategies and approaches for identifying risks or problems associated with implementing and operating information technology, products and process; assessing their likelihood, and initiating strategies to test those risks
12
Bug/Defect Management
14
2. Reporting/ Documentation:
In software, bugs need to be tracked and managed to
Communicate bug for reproducibility, resolution, and
regression.
Track bug status (open, resolved, closed). Ensure bug is not forgotten, lost or ignored
17
Fixing:
Once the bug is assigned to the developer, he fixes the bug. Once the programmer fixes the code , he assigns it back to the tester and the bugs enters the resolved state.
4.
Retesting:
The tester then performs a regression test to confirm that the bug is indeed fixed.
5.
Closing:
If the bug is fixed, then the tester closes the bug. Here the bug then enters its final state, the closed state.
18
19
Description of Various Status of a bug New: When the bug is posted for the first time, its state will be
Open : After a tester has posted a bug, the lead of the tester
approves that the bug is genuine and he changes the state as OPEN.
Assign: Once the lead changes the state as OPEN, he assigns the
bug to corresponding developer or developer team. The state of the bug now is changed to ASSIGN.
Test: Once the developer fixes the bug, he assigns the bug to the
testing team for retesting. Before he releases the software with bug fixed, he changes the state of bug to TEST. It specifies that the bug has been fixed and is released to testing team.
20
Severity of a Bug
It indicates the impact each defect has on the testing efforts or users and administrators of the application under test.
This information is used by developers and management as the basis for assigning priority of work on defects.
23
Critical :
An item that prevents further testing of the product or function under test can be classified as Critical Bug. No workaround is possible for such bugs.
Examples of this include a missing menu option or security permission required to access a function under test.
Major / High :
A defect that does not function as expected/designed or cause other functionality to fail to meet requirements can be classified as Major Bug. The workaround can be provided for such bugs.
24
Average / Medium :
The defects which do not conform to standards and conventions can be classified as Medium Bugs. Easy workarounds exists to achieve functionality objectives.
Examples include matching visual and text links which lead to different end points.
Minor / Low :
Cosmetic defects which does not affect the functionality of the system can be classified as Minor Bugs.
25
Quality Center from HP Bugzilla - from Mozilla Dev Track from TechExcel
26
Types of testing
Alpha testing: It is a type of user acceptance testing conducted in our software company by test engineer just before delivering the applications. Beta testing: It is also a type of user acceptance testing conducted in the clients place either by the end users or by the third party testing experts just before the actual implementation.
Functional testing
Load testing:Also known as scalability testing.During this test,test engineers execute application biuld under customer expected congiguration and load to estimate performance
Performance testing
.
Stress testing:During this test, the test enginners will estimate the peak load to find out the maximum no of users for execution of out application user customer expected configuration to estimate peak load.
Types of testing:
1. Build acceptance testing(BAT): It is a type of testing in which one will perform the testing on the related build in order to check whether a build is proper or not. 2. Regression testing: It is a type of testing in which one will perform testing on the already tested functionality again and again. 3. Retesting: It is a type of testing in which one will perform testing on the same functionality again and again with multiple sets of data in order to come to a conclusion whether it is really working fine or not. 4. Monkey testing: It is a type of testing in which one will perform abnormal actions on the applications intentionally in order to check the stability of the application. 5. Port testing: It is a type of testing in which one will install the application into the original customers environment and check whether it is compatible with that environment or not. 6. End-to-end testing: It is a type of testing in which one will check the end to end scenarios of the application are working or not.
7. Reliability Testing: It is a type of testing in which one will use the application continuously for the long period of time in order the check the stability of the application
8.Mutation testing: It is a type of testing in which one will perform some changes to the application or its related factors and test them. 9. Adhoc testing: It is a type of testing in which once the test engineer will perform testing in their own style after understanding the requirements clearly. 10. Direct URL testing: In this type of testing one will enter the URL s of secured pages and check whether those pages are being accessed or not. If at all if the pages are accessed then it is concluded that application is not properly protected. 11. User privileges testing: In this
type of testing one will enter into the application as one level of the user and will try to access beyond their limits in order to check whether the application is allowing beyond the user privileges or not. If it is allowing it is not properly protect otherwise properly protected.