Professional Documents
Culture Documents
Q&A Part 3
May 25, 2016 Testing - Interview Questions - Experienced
URL for the HTTP begins with http:// and that for HTTPS with https://
HTTP used port 80 for communication. HTTPS uses port 443.
HTTPS requires an SSL digital certificate which is not required in case of HTTP.
As discussed earlier, HTTP is unsecured whereas HTTPS is secured.
HTTPS uses encryption which is not used in HTTP.
HTTPS operates at the transport layer of the OSI model. HTTP operates at the application layer.
2. Difference Between GET and POST
GET request is sent via the URL string (appended to the URI with a question-mark as separator), which is
visible.
POST requestis encapsulated in the body of the HTTP request and cant be seen.
GET request goes via URL, so it has a limitation for its length.
POST Request have no limitations on length.
GET request is comparatively faster than POST request.
GET request is sent via URL string and as we all know that URL can be text-only, so GET can carry only
text data.
POST request has no such restriction and it can carry both text as well as binary data.
GET request is nothing but an URL hence it can be cached as well as Bookmarked.
POST request dont have such facilities.
GET is the default method of the HTML FORM element.
For POST method, we need to specify the method attribute and give it the value POST.
GET requests are restricted to use ASCII characters.
POST requests can use the enctype attribute with a value multipart/form-data to use the Universal
Multiple-Octet Coded Character Set(UCS).
Graphical User Interface testing is done to check the appearance of the application.
Usability Testing is done to check easiness of the application.
GUI Testing is done to test look and feel of the application.
Usability Testing is done to test user friendliness of the application
GUI Testing includes colors, fonts, font sizes, buttons, links, icons, are displayed as specified or not.
Usability Testing includes if application displayed all mandatory fields, cursor positioning for enter the
data into the right field, tab button should work easily etc.
GUI Testing In this testing we test only the front end of the application.
Usability Testing In this Testing we test the overall working of application according to a non-technical
users point of view.
4.Difference between Ad-hoc Testing and Exploratory Testing.
Adhoc Testing begins with learning application first and then start working on testing process
Exploratory testing means test application while learning.
Adhoc Testing Tester knows application in advance
Exploratory Testing Tester dont know the functionality of the application at first.
Adhoc Testing Documentation is not mandatory.
Exploratory Testing Documentation is mandatory.
Adhoc Testing Expert tester is not needed for this type of testing
Exploratory Testing Expert Tester is needed for such type of testing
Adhoc generally is informal testing type with an aim to break the system. This testing is usually an
unplanned activity.
Exploratory is testing approach that involves simultaneous learning, test design, and test execution.
Adhoc Testing Example While Testing WhatsApp user can start with any module with intention to break
application.Tester can start any random module.
Exploratory Testing Example While Testing WhatsApp, first scope has to be defined(Test Attach
Document functionality), so now tester has defined area
of testing and can explore this area and user his creativity to find issues
5. Explain Version, Revision and Releases.
Version: An initial release or re-release of a configuration item associated with a complete compilation or
recompilation of the item.
Different versions have different functionality Revision: Change to a version that corrects only errors in
the design/code, but does not affect the documented functionality.
Release: The formal distribution of an approved version.
Also remember that Testing team has some control on quality. Entire team (dev / test / pms etc) are
responsible for the quality.
15. What is defect measurement?
Defect Measurement is a process for analyzing the efficiency of developer and tester and the process on the
base of the bug details collected from one
project.
Through Defect Measurement below are all the factors are measured
a) Efficiency of developer
b) Efficiency of tester
c) Whether the progress is in gear?
16. Why not use exhaustive testing? how to prioritize test cases?
Exhaustive testing is a test approach in which all possible data combinations are used for testing.
It takes lot of times thats why we need to use some testing techniques.
In other way we can priorities test cases so that testing efforts can be reduced and tester/QA can focus on
more
important functionalities. We can priorities test cases according to perceived risks and customer
expectations towards feature
and tester can reduce number of test cases.
Below are some factors to consider in prioritizing test cases:
Functionalities used mostly by end users
Functional Areas with history of bugs.(Examining defect history)
Most visible functionalities to end users
Newly added functionalities
17.How load testing is performed on a website? How does it work?
To access a website, a user sends a request to that websites server, and the server sends back
a response in the form of the website/page you want to access.
To load test a website, QA engineers and Automation Engineers just need to multiply the number
of request sent to server to simulate different traffic loads.
The web servers response for number of virtual users can then be measured by using performance tool.
This is used to determine performance issues and server capacity.
Leave a comment
2. What do you think is a test plan? Have you written one before? What does it usually consist of?
A test plan is a sort of document which analyzes the resource, scope, approach and schedule of several
testing activities. It will help you to find items that need to be tested, its features that need further testing,
the risks that come with some and the solutions as well.
Yes I have written a test plan before. It consists of history, contents, introduction, scope, overview and
approach. The risks and assumptions are not left out either.
3. Define a Test Case and a Use Case? What do they consist of?
A test case is again a document which gives you a step by step detailed idea on how you can test an
application. It usually comprises of results (pass or fail), remarks, steps, outputs and description.
A use case on the other is a document of another kind. It helps you understand the actions of the user
and the response of the system found in a particular functionality.
10. Tell us about the biggest bug you have ever found.
In my writing experience, I have found several defects. Some of them were small whereas some of them
were huge. The biggest one I have encountered so far is in the previous project on a page where I found a
button called More Information. Once the person using the computer pressed that button, a new window
would automatically pop up. I would then close the window by using three ways. First I would click on X
located on the top right corner of the page. I would then click on Close button and finally the combination
keys on the keyboard.
11. How do you plan on dealing with your team members?
There are higher possibilities that I wont be the only one in the team. At times dealing with the team
members can get very difficult and frustrating. There will be quarrelsome dispositions and
misunderstandings and some will also try to ignore the other. But my purpose is to look beyond all of this.
We are a team and we should work together to reach a common goal. I will be friendly and invite them
over for coffee. As a human, it is very important to share feelings and have important discussions and that
is exactly what I intend to do. This is something that not only me but everyone else in a working
environment should apply.
12. Have you used automation tools before?
For Automation Tools we are considering Functional Automation Testing Tools.
In some projects, used Selenium Web-driver for building Smoke and Critical Test Cases.
Also used Jmeter for performance testing to check some performance parameters.
13. Do you like the QA job? If yes, tell us why?
Yes I do like the QA job. The only reason behind this is because the job is process oriented. This means
that here I have the opportunity to do try several things at the time. I can analyze the needed documents,
test the application, write test plans and test cases, prepare reports and retest them once again if the need
arises. My favorite task would be reducing defects. The more defects I find while working, the happier I
will be.
14. Consider if there is no Test lead, No Test Manager and QA Manager. If you are the senior test
engineer, you are getting pressure from the client to give the build. But you see that, there r 5 high
and 5 low severity bugs. So, what you will do and how you interact with the client?
As you said 5 bugs are high and 5 bugs are low severity. If there is no test lead or manager not available as
a senior Testing Engineer I would concentrate on 5 high severity bugs.First I will understand them and
send them to the particular development team with help of project manager. If required I will explain them
the situation and about the bug severity.
Also I will interact the client behalf of my test team and I will make them understand the current status of
the application.
15. Suppose a website contains 20 pages & having similar type of error in most pages. Tester checked
one page & posted the bug in a bug-tracking system including that this bug remains in most pages
but developer only debugged one page (the location Tester had written). Now who is responsible to
check other pages Developer or Tester ?
Yes, it is responsibility of the tester to identify the bug. While Posting bugs we have to clearly specify that
this bug is repeated in other screen also.
By mistake you have posted a bug saying that error is displayed in a single page .Then there is a thing
called Defect discussion where the nature of the bug is discussed with the development team at the end of
the day where the development may come to know the nature of the bug.
16. You have completed a project and release date is next day, you got one big problem but that
problem cant be resolved in short time and the estimate is 10 days. What are your options?
We could think of any workaround which would be suitable at that point of time for the problem, and make
a note in the Release notes.
In case there is no workaround, then a note should be mentioned in the release notes stating it as a known
issue
17. You have tested the application and it is released. The user asks for some changes in the project
and gives one week time to complete it. Out of the one week, 6 days is taken by the developer to make
the changes. So you have only one day to test it. What will you do in the case in case of manual
testing?
In that case we can test the main part of the application, we can found 80% of errors in that main
functionality only, for that only we can mainly concentrate on main functionality.
18. If a bug has high severity then usually that is treated as high priority, then why do priority given
by project managers and severity given by testers?
High severity bugs affects the end users .Testers tests an application with the users point of view, hence it
is given as high severity. High priority is given to the bugs which affects the development. Project
managers assign a high priority based on development / deployment point of view.
19. If you have executed 100 test cases , every test case passed but apart from these test case you
found some defect for which test case is not prepared,then how you will report the bug?
While reporting this bug into bug tracking tool , first you will generate the test case, write the steps to
reproduce the bug. Then bug will be reported.
20. Suppose the product/application has to deliver to client at 5.00PM, at that time you or your team
member caught a high severity defect at 3PM.(Remember defect is high severity)But the client
cannot wait for longtime.You should deliver the product at 5.00Pm exactly. What procedure you will
follow?
The bug is of high severity. So we can send the application to the client and find out the priority of the
feature having bug. if its priority is low, then we can hide that feature otherwise we should:A) explain the situation to client and ask some more time to fix the bug.
B) If the client is not ready to give some some time then analyze the impact of defect/bug and try to find
workarounds for t
12 Comments
3)How many Test Cases did you write in your last project?
I wrote about 1000 Test Cases in my last project.
(The reasonable number of Test Cases varies from 500 to thousands.
The number 1100 test cases can be completed in a 8 month project duration).
5) Did you have a situation where you did not have any documents
(no requirement document, no Use Cases, or no Design Document) and you had
to write the Test Cases? How did you write the Test Cases?
Yes. I have been to that kind of scenarios in some companies.
There were companies where they had no documents at all
(As requirement doc becomes obsolete sometimes for
new or maintenance projects)In that case, I had to discuss the application scenario and functionality with
the Business Analysts or developer. Sometimes I prepared document indicating main workflow of the application.
12) What Test Techniques are there and what is their purpose ?
Test Techniques are primarily used for two purposes:a) To help identify defects,
b) To reduce the number of test cases.a)Equivalence partitioning is used to reduce number of test cases by
identifying different sets of data that are not the same and only executing one test from each set of data
b)Boundary Value Analysis is used to check the behavior of the system at the boundaries of allowed data.
c)State Transition Testingg is used to validate allowed and disallowed states and transitions from one state to
another by various input data
d)Pair-wise or All Pairs Testing is a very powerful test technique and is mainly used to reduce the number of
test cases while increasing the coverage of feature combinations.
14)How do You Verify the Results of Your Search on Search Results Page?
At first instance, we need to know where the data is coming from. Are they coming from a database? Or some
XML files from 3rd party websites?
Once we have this information, we can start comparing the results we see on the result page with the results
from the source, e.g. database.
Another option is to use mocks to generate the data that we need so we can fully control the data that we see
on the search results page.
15) How is Web Application Testing different to Desktop Application Testing?
Web Applications are typically hosted on a server which we can access via a web browser, where as desktop
applications are installed on the clients machine.
This setup opens a whole new testing challenges: Performance and Security testing become important as the
application is open to a wide audience. Good design and usability are also important.
Other important factors that come to play are testing on multiple browsers, multiple devices, redirection and
responsiveness.
Also we should not forget about Javascript, CSS, Cookies, W3C standards, traffic monitoring, third party tags
testing, all of which are important in Web Application Testing.
16) What are the HTTP response code blocks and what do they mean?
After a request is sent to a server, there are different possible response codes which can be returned by the
server:
The blocks are:
a)2xx for Success, the most common one is 200 which means OK.
b)3xx for Redirection, the most common ones are 301 and 303 which mean Permanent Redirect and
Redirect for Undefined Reason, respectively.
c)4xx for Application Error, the most common ones are 403 and 404 which mean Forbidden and Not
Found, respectively.
d)5xx for Server Error, the most common one is 500 which means Server Error.
17)How would you Test a Service Oriented Architecture (SOA) Web Application?
The testing of web applications that communicate with a web service can be broken down in two parts:
a) Testing of the Web Service in isolation. Each web service has one or more functions which can be tested by
sending appropriate requests and analyzing the response and verifying correct data is returned in the
response. We can use tools such as SoapUI to test a Soap Service or Rest Client to test a RESTful web
service.
b) Integration Testing of Web Service with the Front End. The integration testing is also important as it can
highlight issues with data in the request and display of the response.
The reason for this separation is to be able to identify issues in the web service much quicker and easier to
debug.
18)Suppose you have a Login form which is connected to an Authentication Web Service. What tests
would you perform at which layer?
a) All the input/output validation should be tested at the API layer calling the Authentication Web Service.
Tests such as valid/invalid username/password combinations as well as verifying correct error messages.
b) The location of the display of error messages, their color and font should be tested at login web page. Also
Javascript and Cookies tests if applicable needs to be tested at front-end login page.
19) There are many ways to test a website and there could be lots of test cases to execute, how can you
make sure the web application is fit for release?
a) We can Automate majority of test cases, but most importantly we can use test techniques such as Pair-wise
testing to reduce combinations and/or model based testing to plan user journeys to ensure major functionality
of web application works.
b) We can also use paralytics to gain insight into what users do on the website, which page is most popular
and which feature is most used by users.