Saturday, August 15, 2009

Q: What difference you have observed while testing the Clint/Server application and web server application?

A: Client/server application comes in two tier architecture and web based application is a three tire architecture.

Or
client server application is a intranet application having two tire.. web server application is a internet application having 3tire

Q: If a bug is found that is not replicable all times, does that bug should be reported to developer?

A: If we log a defect that has occurred once and not reproducible again, though we execute the same steps to reproduce, means for the first time execution either their may be a human error in the execution or the application might be responding differently for each execution. Here we need to investigate the issue first and should clarify that is it a defect or not, than we have to log the defect/bug.So that the time to fix the defect will be reduced and by investigating the root cause only we can log genuine defects. Investigation of the root cause shows the capability of the tester.

Q: Can anybody clear me about Equivalence Class partition.
A: Equivalence class partition is a Testing Technique in input domain testing
we will partition the input data as valid and invalid
here a small example I’ll give
assume that there is a password authentication
for the password length minimum range is 3 and maximum 9 & it should accept only lowercase letter and should not accept any and ASCII value's
by using ECP Technique we will prepare the test data like this
Equivalence class partition
Valid Input Data
Invalid input Data
:4-9
1-2,20& a to z , A to Z


Q: What is open issue?
A: when u open an issue for first time for particular field, it is a New status and assign to the developer. Then developer fix it but the bug that has thought to been fixed is again encountered by tester then it is the open status of bug.

Or
Once tester found a issue for the first time send it to developer with the status 'NEW',when the issue is in developer's court developer change the status as 'OPEN' and test for valid or invalid issue


Q: If the developer is not ready to fix the bug what do you do? Question asked to me in an interview
A: In any devolopment company real-time, no developers or tester will say I am not ready to do this; I am not able to do this type of statements.

Based on the priority of the fix and impact of it, the CCB will decide and give the developer enough time to fix it. Or else they can postpone the bug, for further release of the s/w.
don’t mistake me, no developer will say I can not fix this now. he can almost say "I can fix it give me some time".




Q: What is the Query for Joining 6 tables?

A: By using inner joins we can connect 6 tables.

Q: What is database testing and what we test in database testing?
A: Database testing involves some in depth knowledge of the given application and requires more defined plan of approach to test the data. Key issues include:

1) Data Integrity
2) Data Validity
3) Data Manipulation and updates
Tester must be aware of the database design concepts and implementation rules.

Q: How to test a DTS package created for data insert update and delete? What should be considered in the above case while testing it?What conditions are to be checked if the data is inserted, updated or deleted using a text files?
A: Data Integrity checks should be performed. IF the database schema is 3rd normal form, then that should be maintained. Check to see if any of the constraints have thrown an error. The most important command will have to be the DELETE command. That is where things can go really wrong.

Thursday, August 13, 2009

Commonly Ask Questions

Is it mandatory to use Usecases or directly one can write test cases from requirements?
It’s not mandatory to write Use Cases, if the requirements are clear you can go ahead with Test Cases. Use Cases are written to know the business flow of the module/application.
What is the document needed to create a test case? How u tell it is test case?
System requirements specification, Use case document, Test Plan
When will u make update and modify the test object properties in the repository?
When ever the developer may change any one of the object properties definitely we have to change the same in the OR object repository. If new version net build released from the development department we the test engineers must to modify or update the same is compulsory, other wise than test will show the bug

At the time of testing web based applications and client server applications, what you absorbed as a tester?
We generally check for the links, data retrieving and posting.
We perform load and stress testing especially for Web based and Client-Server applications.
What is testing policy and testing methodology? And what is the difference?
Testing policy means all types of testing or testing techniques (i.e. functional testing, sanity testing etc).Testing methodology means white box and black box testing.

What is comparison testing?
Comparison Testing means comparing your software with the better one or you’re Competitor.
While comparison Testing we basically compare the Performance of the software. For ex If you have to do Comparison Testing of PDF converter(Desktop Based Application) then you will compare your software with your Competitor on the basis of:-
1. Speed of Conversion PDF file into Word.
2. Quality of converted file.
In customer details form having fields like customer name, customer address. After completion of this module, client raise the change as insert the two radio buttons after customer address. How you can check as a tester?
1. First we need to verify whether the radio button is there are not?
2. Conform the radio buttons are present after the customer address or not.
3. Verify the no of radio button.
4. Verify only one radio button should be checked initially when we open the Customer details form (if it is mentioned in FS)
5. Verify the functionality of the radio buttons i.e. if we check one ratio button, second radio button should be unchecked.

What are the documents required to prepare test plan?
Introduction, scope, test team and their responsibilities, test environment S/W & H/W requirements, test data preparation, levels of testing, seviority & priority, schedule, risk, automation Plan, features to test, bug life cycle all these are documents of test plan.

What is the general testing process?
Testing Process can be defined as
1. Test requirements analysis
2. Creation of Test Strategy
3. Creation of Test Plans
4. Execution of test cases
5. Analyze the test results
6. Report the defects if any
What participation a manual tester can do in documentation? Are there any tools available for only documentation?
Yes, Manual tester will do Sub Test plan documents, as of my knowledge no tool is used to prepare documentation
What is the difference between low and high level test cases? Give Examples?
High level Test cases are those which covers major functionality in the application (i.e. retrieve, update display, cancel (functionality related test cases), database test cases).
Low level test cases are those which are related to UI related testcases.

How does u develop test harness?
Test Environment Test Bed
Test Environment S/W and H/W
Test Bed: Test Documents like Test Plan Document, Test Case Document.
Test Environment means
• Test Bed installation and configuration
• Network connectivity’s


What is test scenario and test case? Please explain in detail?
Test Scenario:
Test scenario is like laying out plans for testing the product, environmental condition, number of team members required, making test plans, making test cases and what all features are to be tested for the product. Test scenario is very much dependent on the product to be tested.
Test scenario is made before the actual testing starts.
Test Case:
Test case is a document which provides the steps to be executed which has been planned earlier. It also depends on the type of product to be tested. Number of test cases is
Not fixed for any product.



Tester with develop meant knowledge will be more effective .justify?
If tester has experience in Development, it will be useful when testing for logical thinking where the error occurs, what is the cause? He can guess the functionality of component? He can easily understand the application environment? Those are plus points which people have
Development experience.
Precisely he can justify that either functionality is wrong or right and can analyze the defects

Wednesday, August 12, 2009

What is V model



The V-model is a graphical representation of the systems development lifecycle. It summarizes the main steps to be taken in conjunction with the corresponding deliverables within computerized system validation framework.



OR

Business Case
The first step in development is a business investigation
followed by a "Business Case" produced by the customer for
a system. This outlines a new system, or change to an
existing system, which it is anticipated will deliver
business benefits, and outlines the costs expected when
developing and running the system.

Requirements
The next broad step is to define a set of "Requirements",
which is a statement by the customer of what the system
shall achieve in order to meet the need. These involve both
functional and non-functional requirements. Further details
are in the requirements article.

System Specification
"Requirements" are then passed to developers, who produce
a "System Specification". This changes the focus from what
the system shall achieve to how it will achieve it by
defining it in computer terms, taking into account both
functional and non-functional requirements.

System Design
Other developers produce a "System Design" from the "System
Specification". This takes the features required and maps
them to various components, and defines the relationships
between these components. The whole design should result in
a detailed system design that will achieve what is required
by the "System Specification".

Component Design
Each component then has a "Component Design", which
describes in detail exactly how it will perform its piece
of processing.

Component Construction
Finally each component is built, and then is ready for the
test process.

Types of Testing
The level of test is the primary focus of a system and
derives from the way a software system is designed and
built up. Conventionally this is known as the "V" model,
which maps the types of test to each stage of development.

Component Testing
Starting from the bottom the first test level is "Component
Testing", sometimes called Unit Testing. It involves
checking that each feature specified in the "Component
Design" has been implemented in the component.

In theory an independent tester should do this, but in
practise the developer usually does it, as they are the
only people who understand how a component works. The
problem with a component is that it performs only a small
part of the functionality of a system, and it relies on co-
operating with other parts of the system, which may not
have been built yet. To overcome this, the developer either
builds, or uses special software to trick the component
into believing it is working in a fully functional system.

Interface Testing
As the components are constructed and tested they are then
linked together to check if they work with each other. It
is a fact that two components that have passed all their
tests, when connected to each other produce one new
component full of faults. These tests can be done by
specialists, or by the developers.

Interface Testing is not focussed on what the components
are doing but on how they communicate with each other, as
specified in the "System Design". The "System Design"
defines relationships between components, and this involves
stating:

What a component can expect from another component in terms
of services.
How these services will be asked for.
How they will be given.
How to handle non-standard conditions, i.e. errors.
Tests are constructed to deal with each of these.

The tests are organised to check all the interfaces, until
all the components have been built and interfaced to each
other producing the whole system.

System Testing
Once the entire system has been built then it has to be
tested against the "System Specification" to check if it
delivers the features required. It is still developer
focussed, although specialist developers known as systems
testers are normally employed to do it.

In essence System Testing is not about checking the
individual parts of the design, but about checking the
system as a whole. In effect it is one giant component.

System testing can involve a number of specialist types of
test to see if all the functional and non-functional
requirements have been met. In addition to functional
requirements these may include the following types of
testing for the non-functional requirements:

Performance - Are the performance criteria met?
Volume - Can large volumes of information be handled?
Stress - Can peak volumes of information be handled?
Documentation - Is the documentation usable for the system?
Robustness - Does the system remain stable under adverse
circumstances?
There are many others, the needs for which are dictated by
how the system is supposed to perform.

Acceptance Testing
Acceptance Testing checks the system against
the "Requirements". It is similar to systems testing in
that the whole system is checked but the important
difference is the change in focus:

Systems Testing checks that the system that was specified
has been delivered.
Acceptance Testing checks that the system delivers what was
requested.
The customer, and not the developer should always do
acceptance testing. The customer knows what is required
from the system to achieve value in the business and is the
only person qualified to make that judgement. To help them
courses and training are available.

The forms of the tests may follow those in system testing,
but at all times they are informed by the business needs.

Release Testing
Even if a system meets all its requirements, there is still
a case to be answered that it will benefit the business.
The linking of "Business Case" to Release Testing is looser
than the others, but is still important.

Release Testing is about seeing if the new or changed
system will work in the existing business environment.
Mainly this means the technical environment, and checks
concerns such as:

Does it affect any other systems running on the hardware?
Is it compatible with other systems?
Does it have acceptable performance under load?
These tests are usually run the by the computer operations
team in a business. The answers to their questions could
have significant a financial impact if new computer
hardware should be required, and adversely affect
the "Business Case".

It would appear obvious that the operations team should be
involved right from the start of a project to give their
opinion of the impact a new system may have. They could
then make sure the "Business Case" is relatively sound, at
least from the capital expenditure, and ongoing running
costs aspects. However in practise many operations teams
only find out about a project just weeks before it is
supposed to go live, which can result in major problems.

Regression Tests

With modern systems one person's system, becomes somebody
else's component. It follows that all the above types of
testing could be repeated at many levels in order to
deliver the final value to the business. In fact every time
a system is altered.

What is SDLC?


What is SDLC
A software cycle deals with various parts and phases from planning to testing and deploying. All these activities are carried out in different ways, as per the needs. Each way is known as a Software Development Lifecycle Model (SDLC).
Some SDLC models
* The Linear model (Waterfall)
- Separate and distinct phases of specification and development
- All activities in linear fashion
- Next phase starts only when first one is complete
* Evolutionary development
- Specification and development are interleaved (Spiral,incremental,prototype based,Rapid Application development)
- Incremental Model (Waterfall in iteration)
- RAD(Rapid Application Development) - Focus is on developing quality product in less time
- Spiral Model - We start from smaller module and keeps on building it like a spiral. It is also called Component based development.
* Formal systems development
- A mathematical system model is formally transformed to an implementation
* Agile Methods
- Inducing flexibility into development
* Reuse-based development
- The system is assembled from existing components

Easy Answers....

Q: What is test plan? When will prepare in testing life cycle? What are its contents?give me example of test plan?
A: Test plan is a detail project plan which covers the following -1 Scope 2- Methodology 3-Requirements 4-criteria for passes fail 5-Schedule. after SRS we will makes test plan,


Q: What difference you have observed while testing the Clint/Server and web server application ?
A: client server application is 2tier architecture, here client server/database will be there but web server is 3tier architecture here client/web server/database will be there.

Q: What is the difference between Master Test Plan and Test Plan? Do we really require two Test Plans? Please explain in detail?
A: Sometimes for a large project the organization may have a Matser teat plan and for phase testing efforts level test plans which are the subsets derived in MTP, having references to MTP

The Master Test Plan explains the methods, procedures, and approach that the co. employs in the verification and validation of an internally developed, Third Party Vendor, or Third Party Vendor Modified application or product.

The purpose of the Test Plan is to gather all of the information necessary to plan and control the test effort for a given iteration. It describes the approach to testing the software, and is the top-level plan generated and used by managers to direct the test effort.

Monday, August 10, 2009

Q: What is Bug Tracking?
A1: A bug tracking system is a software application that is designed to help quality assurance and programmers keep track of reported software bugs in their work.
OR
A2:
Bug Tracking system is a centralized system used to Report bugs and keep the track of all the bugs found during execution of testing also it helps in knowing the status of the bug, the concerned person is intimated with the bug status.

Q: Explain defect life cycle?
A:
Defect life cycle:
1. If the bug is new then open it.
2. Assign it to tester.
3. Retest it.
4. If still have not resolved reassign it.
5. Retest it.
6. After resolving, close it.

What is Software testing

Software testing is any activity aimed at evaluating an attribute or capability of a program or system and determining that it meets its required results. ...