1 Attachment(s)
Guidelines for Manual Testing
Hi friends, the below article will give an overview of software testing, the different types of testing that can be done and the activities involved in manual software testing.
<b>1.1 what is software testing?</b>
ieee definition states “testing is the process of exercising or evaluating a system or system component by manual or automated means to verify that it satisfies specified requirements” as such, there are many published definitions of software testing, however all of these definitions boils down to essentially the same thing:
software testing is the process of executing software in a controlled manner, in order to answer the question “<b>does the software behave as specified?</b>” on a whole, testing objectives could be summarized as:
• testing is a process of executing a program with the intent of finding an error.
• a good test is one that has a high probability of finding an as yet undiscovered error.
• a successful test is one that uncovers an as yet undiscovered error.
<b>1.2 why test?</b>
• developers not fallible
• bugs in compilers, languages, dbs, os
• certain bugs easier to find in testing
• don’t want customers to find bugs
• post release debugging is expensive
• good test design is challenging and rewarding
<b>1.3 principles of testing</b>
• all tests should be traceable to requirements
• tests should be planned ahead of execution
• pareto principle – isolate suspect components for vigorous testing (80% of defects can be traced back to 20% of requirements)
• testing should be done in an outward manner (unit ->system)
<b>1.4 can testing be replaced?</b>
though there are other approaches possible to create good software like <b>inspection, reviews, design style, static analysis, language checks etc</b> software testing cannot be done away with. Review, inspect, read, walkthrough and test mandatorily
<b>1.5 test strategy definition</b>
a test strategy is a statement of the overall approach to testing, identifying what levels of testing are to be applied, and the methods, techniques and tools.
<b>1.6 test plan</b>
the next task would be the preparation of a test plan a test plan states what the items to be tested are, at what level they will be tested, what sequence they are to be tested in, how the test strategy will be applied testing of each item, and describes the test environment. Different test plans are prepared based on the level of testing.
The objective of each test plan is to provide a plan for verification, by testing the software, that the software produced fulfills the requirements or design statements of the appropriate software specification.
<b>unit test plan:</b> a unit test plan describes the plans for testing individual units / components / modules of the software
<b>integration test plan:</b> an integration test plan describes the plan for testing integrated software components.
<b>system test plan:</b> a system test plan describes the plan for testing the system as a whole.
<b>acceptance test plan:</b> an acceptance test plan describes the plan for acceptance testing of the software. Normally “acceptance test plan” is prepared by the customer
<b>1.7 test design</b>
once the test plan for a level of testing has been written, the next stage is to specify a set of test cases or test paths for each item to be tested at that level. A number of test cases will be identified for each item to be tested at each level of testing.
Each test case will specify how the implementation of a particular requirement or design is to be tested and the criteria for success of each test.
• a <b>unit test specification</b> will detail the test cases for testing individual units of the software
• a <b>integration test specification</b> will detail the test cases for each stage of integration of tested software components
• a <b>system test specification</b> will detail the test cases of system testing of the software
• an <b>acceptance test specification</b> will detail the test cases of acceptance testing of the software it is important to design test cases for both positive and negative testing. Positive testing checks whether the software is doing what it is supposed to do and negative testing checks whether the software is doing what it is not supposed to do.
<b>1.8 test execution and reporting</b>
the next stage is performing the necessary testing. The output of test execution is recorded in a test results file normally called as the test log. These actual results are then compared with the expected result of the test specification to determine if the test case has been successful or not. Accordingly a “pass / fail” is marked against the respective test case. If the test case has been a failure, then a re-run of the test case is done and results noted.
<i>find attached the file for the flowchart depicting the testing process</i>
<b>1.9 when do you stop testing?</b>
before we ask this question, let us try to answer another question
<b>“is complete testing possible?”</b>
obviously the answer is no. To prove that a program is completely free of bugs is practically impossible and theoretically a mammoth exercise.
Therefore the aim of testing is to provide a suitable, convincing demonstration that the program has been tested enough some of the stop criterias are:
• time runs out (poor criteria !!)
• resources run out
• testing stops when all test cases execute without producing any error
• testing stops when certain number of errors are found
• testing stops when all statements and all branches are executed and all test cases execute without failure
• testing stops when the result is unproductive (no. Of errors per person per day reduces)
<b>2.0 useful tips</b>
• manage testing seriously as development projects are managed
• foster a quality culture that wants to find and prevent problems
• set clear directions and expectations
• delegate responsibility and accountability to good people
• invest in team tooling and support infrastructure
<b>2.1 common pitfalls</b>
some of the aspects that hinder testing itself could be
• optimism
• belief that the system works
• negative attitude towards effective testing
• ego
• don’t want to fail
• conflict between testers and developers
• testing is least structured
• testing is expensive
• delivery commitments
some of the pitfalls of manual testing could be
• testing speed cannot match development speed
• each build not fully tested
• test coverage decreases, more bugs left undetected
Re: Guidelines for Manual Testing
Re: Guidelines for Manual Testing
How to estimate the time limit for testing
1 Attachment(s)
Re: Guidelines for Manual Testing
[QUOTE=Manjukeragodu;24364]How to estimate the time limit for testing[/QUOTE]
Hi Manju,
Plese find the attched document which will help you in estimating through test case point analysis.
Regards,
Ganesan
Re: Guidelines for Manual Testing
You are simply great man. Thanks a lot
Re: Guidelines for Manual Testing
Re: Guidelines for Manual Testing
Hi sridhar ganeshan,
the testing process flow chart is really good... :)
Thanks,
krishna
Re: Guidelines for Manual Testing
The materials for manual testin was very much clear but i have few questions regarding types of testing techniques
1)as i can see unit testing is done to test components,
a)is unit testing black box or white box?
b)does in unit testing the whole application/program is divided into small similar functionality division and testing is performed for that division
c)does unit testing can be done with many testing technique(like system testing can be load or performance or regression) i.e is there any sub division in unit testing
thanks & regards
trainee_tester
Re: Guidelines for Manual Testing
[QUOTE=trainee_tester;26749]The materials for manual testin was very much clear but i have few questions regarding types of testing techniques
1)as i can see unit testing is done to test components,
a)is unit testing black box or white box?
b)does in unit testing the whole application/program is divided into small similar functionality division and testing is performed for that division
c)does unit testing can be done with many testing technique(like system testing can be load or performance or regression) i.e is there any sub division in unit testing
thanks & regards
trainee_tester[/QUOTE]
Hi,
Unit Testing is the White Box Testing Technique.
Unit testing is done against the code and it is done prior to it goes out for System or Performance testing. While doing unit testing the developers will validate the code using the following ways:
1. statement coverage: Here it will be tested that all the statements in the code is necessary and if there are any unwanted line of code it is removed, and code efficiency is increased by this way
2. Decision coverage or branch coverage - here it is tested that all the branch decisions are executed atleast once.
3. Condition coverage- here the condition loop is tested for both the true and false conditions are executed as per the requirement.
When Bugs are marked for the applicaiton while doing system or performance testing, and the bugs are fixed by the developer and once again the unit testing is carried out before deployed for functional or performance testing.
Regards,
Ganesan
Re: Guidelines for Manual Testing
Re: Guidelines for Manual Testing
Upload some document related to checklist also.
Re: Guidelines for Manual Testing
Thanks for giving valuable documentation about Testing......But My question is how the ERP technologies will test.....like SAP,Oracle Apps......
Regards,
Rajasekharreddy.Y
Re: Guidelines for Manual Testing
Hi Ganesan,
Thanks for the info...your effort is appreciated.
Cheers,
Sanskriti.
Re: Guidelines for Manual Testing
Thanx and its a great answer
Re: Guidelines for Manual Testing
Hi,
I want to know some thing about
a. State Transition Testing
b. Decision Table Testing.
Re: Guidelines for Manual Testing
Hi All,
i am new to this forum and testing.This information very useful.
Thank you.
Re: Guidelines for Manual Testing
Hi Syamu,
Welcome to this forum!!!
Regards,
Krishna
Re: Guidelines for Manual Testing
Good way!!!!!!!! am asking about ---- storage testing & compatible testing
Re: Guidelines for Manual Testing
Hi Every one
I am new to this forum and this is really helpful.
I recently had an interview in which interviewer asked what did you considered for preparing Test Plan? Please, Can any body any body give the answer for this.
Thanks
Priyanka
Re: Guidelines for Manual Testing
hi priya!
testplan can be developed by using design doc, on that we need to identify test plan heads like
1.project title,
2.test strategy,
3.test schedule,
4.test environment,
5.test deliverables,
6.features to be tested,
7.features not to be tested,
8.risks & mitigations ,
9.bug classification,
10.enrty / exit criteria
these are main test plan heads