Manual
Manual
Trac
Redmine
OTRS
Mantis BT
BugZilla
WebIssues
Fossil
1. Robotium
2. sahi
3. WinRunner
4. UFT(unified functional testing)
5. Selenium
6. CodedUI
7. QTP(quality test perfomance)
Functional testing -
Functional testing involves validating the
functional specifications of the system.
Non Functional testing - Non functional testing is a type of testing that
involves testing of non-functional requirements of the system such as
performance, scalability, security, endurance, portability etc.
A test plan is a document describing the scope, approach, objectives, resources, and schedule of
a software testing effort. It identifies the items to be tested, items not be tested, who will do the
testing, the test approach followed, what will be the pass/fail criteria, training needs for team, the
testing schedule etc.
5) What is a test script?
A test script is an automated test case written in any programming or scripting
language. These are basically a set of instructions to evaluate the functioning of an
application.
Once the application is stable after few cycles of manual testing, now the old test
cases are converted into test scripts.
9) What is a defect?
What is a bug?
What is a failure?
Once the product is deployed and customers find any issues then
they call the product as a failure product. After release, if an end
user finds an issue then that particular issue is called as failure
A regression bug is the that is brought up as a result of a bug fix on some existing issue.
E.g.-So you know that an application is having an issue on say login page, you create a
fix to that and deploy in production. Now your login page is working fine, but the signup
page may have faced another issue which earlier didn’t existed. The reason the bug
existed now is due to the latest fix you brought in.
E.g. February has 28 days. The system could have not considered the leap year which
results in a latent defect
10)PROTOTYPE MODEL?
The Prototyping Model is one of the most popularly used Software Development Life
Cycle Models (SDLC models).This model is used when the customers do not know the
exact project requirements beforehand. In this model, a prototype of the end product is
first developed, tested and refined as per customer feedback repeatedly till a final
acceptable prototype is achieved which forms the basis for developing the final product.
Advantages –
The customers get to see the partial product early in the life cycle. This ensures a
greater level of customer satisfaction and comfort.
New requirements can be easily accommodated as there is scope for refinement.
Missing functionalities can be easily figured out.
Errors can be detected much earlier thereby saving a lot of effort and cost, besides
enhancing the quality of the software.
The developed prototype can be reused by the developer for more complicated
projects in the future.
Flexibility in design.
Disadvantages –
Costly w.r.t time as well as money.
There may be too much variation in requirements each time the prototype is
evaluated by the customer.
Poor Documentation due to continuously changing customer requirements.
It is very difficult for the developers to accommodate all the changes demanded by
the customer.
There is uncertainty in determining the number of iterations that would be required
before the prototype is finally accepted by the customer.
After seeing an early prototype, the customers sometimes demand the actual
product to be delivered soon.
Developers in a hurry to build prototypes may end up with sub-optimal solutions.
The customer might lose interest in the product if he/she is not satisfied with the
initial prototype.
Use –
The Prototyping Model should be used when the requirements of the product are not
clearly understood or are unstable. It can also be used if requirements are changing
quickly. This model can be successfully used for developing user interfaces, high
technology software-intensive systems, and systems with complex algorithms and
interfaces. It is also a very good choice to demonstrate the technical feasibility of the
product.
Verification Validation
The verifying process includes checking It is a dynamic mechanism of testing and validating the
documents, design, code, and program actual product
It does not involve executing the code It always involves executing the code
Verification uses methods like reviews, It uses methods like Black Box Testing, White Box Testing,
walkthroughs, inspections, and desk-
checking etc. and non-functional testing
Whether the software conforms to It checks whether the software meets the requirements
specification is checked
and expectations of a customer
It finds bugs early in the development It can find bugs that the verification process can not catch
cycle
QA team does verification and make sure With the involvement of testing team validation is
that the software is as per the requirement
in the SRS document. executed on software code.
1. Both Verification and Validation are essential and balancing to each other.
2. Different error filters are provided by each of them.
3. Both are used to finds a defect in different way, Verification is used to identify the errors in
requirement specifications & validation is used to find the defects in the implemented
Software application.
What is Static Testing?
Under Static Testing, code is not executed. Rather it manually checks the code,
requirement documents, and design documents to find errors. Hence, the name
"static". The main objective of this testing is to improve the quality of software
products by finding errors in the early stages of the development cycle. This testing is
also called a Non-execution technique or verification testing.
Testing was done without executing the program Testing is done by executing the program
This testing does the verification process Dynamic testing does the validation process
Static testing is about prevention of defects Dynamic testing is about finding and fixing the defects
Static testing gives an assessment of code and Dynamic testing gives bugs/bottlenecks in the
documentation software system.
Static testing involves a checklist and process to be Dynamic testing involves test cases for execution
followed
This testing can be performed before compilation Dynamic testing is performed after compilation
Static testing covers the structural and statement Dynamic testing covers the executable file of the code
coverage testing
Cost of finding defects and fixing is less Cost of finding and fixing defects is high
Return on investment will be high as this process Return on investment will be low as this process
involved at an early stage involves after the development phase
More reviews comments are highly recommended More defects are highly recommended for good quality.
for good quality
Requires loads of meetings Comparatively requires lesser meetings
Unit Testing: Under Unit Testing, individual units or modules are tested by the
developers. It involves testing of source code by developers.
Integration Testing: Individual modules are grouped together and tested by
the developers. The purpose is to determine what modules are working as
expected once they are integrated.
System Testing: System Testing is performed on the whole system by
checking whether the system or application meets the requirement specification
document.
Also, Non-functional testing like performance, Security Testing fall under the
category of dynamic testing.
Formal Review:
A type of peer review, "formal review" follows a formal process and has a
specific formal agenda. It has a well structured and regulated process, which is
usually implemented at the end of each life cycle. During this process, a formal
review panel or board considers the necessary steps for the next life cycle.
Features of Formal Review:
Here, the leader verifies that the action documents are verified and
incorporated into external processes.
o Planning.
o Kick-off.
o Preparation.
o Review meeting.
o Rework.
o Follow up.
Informal Review:
Unlike Formal Reviews, Informal reviews are applied multiple times during
the early stages of software development process. The major difference
between the formal and informal reviews is that the former follows a
formal agenda, whereas the latter is conducted as per the need of the team and
follows an informal agenda. Though time saving, this process is not
documented and does not require any entry criteria or large group of
members.
Features of Informal Review:
Here the team identifies errors & issues as well as examine alternatives.