Vous êtes sur la page 1sur 10

CAP526 – Software Testing and Quality Assurence

Homework Title / No. : 2 Course Code : CAP526

Course Instructor: MS. GARGI SHARMA

DOA: DOS : MARCH 10, 2010

Student’s Roll No: RD3803B50 Section No : D3803

Declaration:

I declare that this assignment is my individual work. I have not copied from
any other student’s work or from any other source except where due
acknowledgment is made explicitly in the text, nor has any part been written
for me by another person.

Student’s Signature:

Sandeep Saini

Evaluator’s comments:
_____________________________________________________________________

Marks obtained : ___________ out of ______________________

Part – A

Q1. Why does knowing how the Software works influence how and
what you should test?.
the entire testing depends on how the software works. The center point of
testing revolve around….that the software should work according to
requirement specification. . It has to fulfill the requirements, it has to have
passed testing, and it has to be ready for the user. It has to have the
appropriate documentation and user's manual and online help. Testing will
be done on the basis of requirements of software. It should be test on the
basis of overall working of software and requirements of the software.

Q2. What is the biggest problem of White-Box Testing either Static


or Dynamic?

White Box Testing (also known as Clear Box Testing, Open Box Testing,
Glass Box Testing, Transparent Box Testing or Structural Testing) is a
software testing method in which the internal
structure/design/implementation of the item being tested is known to the
tester. The tester chooses inputs to exercise paths through the code and
determines the appropriate outputs. Programming know-how and the
implementation knowledge is essential. White box testing is testing beyond
the user interface and into the nitty-gritty of a system.

White Box Testing method is named so because the software program, in


the eyes of the tester, is like a white/transparent box; inside which one
clearly sees.
Eg:- A tester, usually a developer as well, studies the implementation code
of a certain field on a webpage, determines all legal (valid and invalid) AND
illegal inputs and verifies the outputs against the expected outcomes, which
is also determined by studying the implementation code.

DISADVANTAGES OF WHITE BOX TESTING


• Since tests can be very complex, highly skilled resources are required,
with thorough knowledge of programming and implementation.
• Test script maintenance can be a burden if the implementation changes
too frequently.
• Since this method of testing it closely tied with the application being
testing, tools to cater to every kind of implementation/platform may not
be readily available.

White Box Testing is like the work of a mechanic who examines the engine
to see why the car is not moving.

Q3. How could you guarantee that your Software would never have
a Configuration Problem?

We can not guarantee that a software would never have a configuration


problem because as new software are coming up in the market ,new
hardware are also coming up in the market…..it is not possible that user
update all the new hardware that are coming in the market. may be,
software is not compactable with it.therefore it is never possible that
software would never have a configuration problem.

Q4. Create the equivalence partitioning and write test cases to test
the login screen containing username and password?

1. Cursor position in username field.


2. Validations for wrong entry of username:
a. Case sensitivity can be tested
b. Cursor back to username field after being shown validation message.
3. Cursor position to Password field on pressing Tab key.
4. Validations for wrong entry of password.
a. Case sensitivity should be tested
b. Cursor back to password field after being shown validation message.
5. Focus to Login button on pressing Tab key.
Q5. Explain the key elements involved in formal reviews?

The formal review process is intended to address the impacts of a


deliverable on other areas and to provide management assurance that the
deliverable satisfies the given requirements for quality. “Formal” reviews are
usually called “inspections.”

Essential elements to a formal review:-

1. identify problem:-

The goal of review is to find problems with the software –not just items that
are wrong, but missing items as well. All criticism should be directed at the
design or code, not the person who created it.

2. Follow rules:-

A fixed set of rules should be followed. They may set the amount of code to
be reviewed, how much time will be spent, what can be commends on, and
so on.

3. Prepare:-

Each participant is expected to prepare for and contributes to the reviews.


Depending on the type of review, participants may have different roles. They
need to know what their duties and responsibilities are and be ready to
actively fulfill them at the reviews.

4. Write a report:-
The review group must produce a written report summarizing the result of
the review and make that report available to the rest of the product
development team.

Part – B

Q6. Is it acceptable to release a Software Product that has


Configuration Bugs?

No,it is not acceptable to release a software product that has configuration


bugs..
Configuration testing is the process of testing a system under development
on machines which have various combinations of hardware and software.

In many situations the number of possible configurations is far too large to


test. For example, suppose you are a member of a test team which working
on some desktop user application. The number of combinations of operating
system versions, memory sizes, hard drive types, CPUs alone could be
enormous. If you target only 10 different operating system versions, 8
different memory sizes, 6 different hard drives, and 7 different CPUs, there
are already 10 * 8 * 6
* 7 = 3,360 different hardware configurations. Then if you add various
software components such as Web browser version, anti-virus software,
earlier versions of the system under development, the number of possible
configurations quickly becomes unmanageable. Note that not all software
development efforts necessarily face an unmanageable number of
configurations. For example, software developed for specific, non-PC
hardware devices
may have only a handful of hardware and software configurations.

Q7. In addition to age and popularity what other criteria might you
use to equivalence Partition Hardware for Configuration testing?

Equivalence partitions of the hardware for the configuration testing are:-

1. Based on the input from the people who works on the equipment.

2. Project manager.

3. Sales people etc.

After that develop the test cases, collect the selected hardware, and
run the tests.

Q8. What are the different levels of Testing and the goals of
different levels? For each level Which Testing Approach is more
suitable?

There are two levels of testing:


1. Static Testing
2. Dynamic Testing
1. Static Testing: Static testing typically reviews and meetings to evaluate
the documents, plans, code,requirements and specification.
2. Dynamic Testing:
a)Unit Testing
b)Integration Testing
c)System Testing
d)User Acceptance Testing

a)Unit Testing: To test a single program,module,or unit of code.


b)Integration Testing: To test related programs,modules or units of code are
interfaced properly or not validates that multiple parts of the system interact
according to the system design.
c)System Testing: To test an entire computer system with respect to
functionality and performance.
d)User Acceptance Testing: The end user tests the application to check
whether the it is as per customers requirements or not.

Goal:to show a program meets its specification but testing can never be
complete for non-trivial programs.What is a successful test?
_ One in which no errors were found?
_ One in which one or more errors were found?
Testing should be:
_ repeatable
_ if you find an error, you’ll want to repeat the test to show others
_ if you correct an error, you’ll want to repeat the test to check you did fix it
_ systematic
_ random testing is not enough
_ select test sets that cover the range of behaviors of the program
_ select test sets that are representative of real uses
_ documented
_ keep track of what tests were performed, and what the results were
Q9. Relate verification and validation to the Quality control and
Quality Assurance with an example?

Verification is a Quality control process that is used to evaluate whether or


not a product, service, or system complies with regulations, specifications, or
conditions imposed at the start of a development phase. Verification can be
in development, scale-up, or production. This is often an internal process.

Validation is Quality assurance process of establishing evidence that


provides a high degree of assurance that a product, service, or system
accomplishes its intended requirements. This often involves acceptance of
fitness for purpose with end users and other product stakeholders.

It is sometimes said that verification can be expressed by the query "Are you
building the thing right?" and validation by "Are you building the right
thing?" "Building the right thing" refers back to the user's needs, while
"building it right" checks that the specifications be correctly implemented by
the system. In some contexts, it is required to have written requirements for
both as well as formal procedures or protocols for determining compliance.

Q10. In a code review check list there are some items as given
below .Categories them.

1. Is the entire conditional path reachable?


2. If the pointers are used, are they initialized properly?
3. Is there any part of code unreachable?
4. Has the use of similar looking operators (e.g. &,&& or =,== in
C)checked ?
Does the code follow the coding conventions of the organization?
Answer1:-
It is a control flow errors.

Answer2:-
It is a data declaration error.

Answer3:-
It is input/output errors.

Answer4:-
It is the computation errors.
Yes, this code follows the coding convention of an organization