SlideShare a Scribd company logo
Specify the Port Number for AD, DNS, DHCP, HTTP, HTTPS, SMTP, POP3 & FTP?
AD- uses LDAP Udp 389 and
UDP 135,
DNS- 53,
DHCP-67,68,
HTTP-80,
HTTPS-,SMTP-25,
POP3-110 &
FTP-20,21.
Explain the functionality of FTP Server?
The FTP server is to accept incoming FTP requests. Copy or move the files that you want to make available
to the FTP publishing folder for access. The default folder is drive:InetpubFtproot, where drive is the drive on
which IIS is installed
In the client-server model, a file server is a computer responsible for the central storage and management
of data files so that other computers on the same network can access the files. A file server allows users to
share information over a network without having to physically transfer files by floppy diskette or some other
external storage device.
What is Virtual Hosting?
Also known as shared hosting, this form of web hosting should suffice for most everyone. Virtual hosting
simple refers to the fact that your site is on one server, and that this server hosts mulitple sites. You are
virtually shared - your site will not be the only one on this specific server. Very few sites would actually need
the power of a dedicated server, so this option provides to be a reliable and cheap solution.
How is the Cloud Computing different from primitive Client-Server Architecture?
The primitive Client-Server architecture is a one-to-one communication between only two physical machines
namely Client machine and Server machine (datacenter). Whereas the cloud computing, infrastructure is
similar at the client side but varies at server-side. The server-side contains a main Cloud Controller that
forwards the request to its worker machines known as Nodes. These nodes are a grid computing machines
that dedicate all its resources to process application. These nodes are maintained in clusters. So a cloud
computing infrastructure is quite complicated on server side that processes all the requests from clients and
send the result back.
What is meant by Middleware?
Middleware is a distributed software needed to support interaction between clients and servers. In short, it
is the software that is in the middle of the Client/Server systems and it acts as a bridge between the clients
and servers. It starts with the API set on the client side that is used to invoke a service and it covers the
transmission of the request over the network and the resulting response.
It neither includes the software that provides the actual service - that is in the servers domain nor the user
interface or the application login - that's in clients domain.
What is Subnetting? Why is it used?
Used in IP Networks to break up larger networks into smaller subnetworks. It is used to reduce network
traffic, Optimized network performance, and simplify management i.e. to identify and isolate network
problems.
How network Gateway is different from Routers?
Gateway
A device connected to multiple physical TCP/IP networks capable of routing or delivering IP packets between
them.
Router
It’s a layer 3 device that connects 2 different networks and routes packets of data from one network to
another. It breaks up Broadcast domain as well as Collision Domain.
What's the benefit of subnetting?
Reduce the size of the routing tables.
Reduce network traffic. Broadcast traffic can be isolated within a single logical network.
Provide a way to secure network traffic by isolating it from the rest of the network.
What are the differences between static ip addressing and dynamic ip
addressing?
With static IP addressing, a computer (or other device) is configured to always use the same IP address.
With dynamic addressing, the IP address can change periodically and is managed by a centralized
network service
http://www.theshulers.com/whitepapers/internet_whitepaper/
Understanding Domain Name Servers and Web Addresses
resolution
The machines on web don't understand the human readable domain names (eg: www.humlog.net) but
they need addresses in a format called IP address. So there must be someone sitting in between our
browser and the web server (on which the web page is hosted/stored) who translates this human
readable domain name to machine understandable IP address. This translation is called Domain Name
Resolution and it can happen in your browser or in your computer, or in your router or on the web.
Let us understand these behind-the-scenes processes.
1. All browsers have their own caches which store the most recently browsed domains and their IP
addresses. So the first step in Domain Name Resolution is for the browser to check in its cache for an
entry of the current domain name. If it finds an entry in cache, it reads the corresponding IP address
and forwards it to the machines on web, so that they can find the address and return the contents
sitting on that address. In this case the Domain Name Resolution happened in the browser's cache.
2. If the browser cannot find an entry in its cache, then the request for Domain Name Resolution goes
to the Operating system's caches. If OS finds an entry in its cache, the Domain Name Resolution
happens in the OS itself.
3. If the OS cannot find an entry in its cache, then the request for Domain Name Resolution goes to the
DNS resolver configured in the computer. A DNS resolver contains address of the DNS server which
will be used for Domain Name Resolution. Usually the DNS resolver is auto configured as part of IP
configuration by the Internet service providers.
4. DNS resolver forwards the request to the DNS server. From here on, the process of Domain Name
Resolution gets interesting.
5. A DNS server contains a mapping of domain names and their corresponding IP addresses and is
capable of querying other DNS servers on web in case, it itself doesn't contain a domain name entry.
6. Every DNS server knows the address of the root DNS server which contains a mapping of all the
top-level domains and their corresponding IP addresses. Top-level domains are the last part of your
domain name (inwww.humlog.net, its net). For querying the root DNS server, the domain name is
broken into parts starting backwards. So if the domain name is www.humlog.net, first part from
backside is 'net'. A query is made to root DNS server asking for the IP address of the DNS server
responsible for .net domains.
7. Now this DNS server, which is responsible for .net domains, is queried for the next part of the
domain, i.e. humlog. This will return the address of the name server of the website (humlog.net)
8. In the final step, the name server of website is queried for the next part, i.e. www. This will return
the IP address of the domain name 'www.humlog.net' and we can get to see the contents of the
website.
Usage
TCP is used in case of non-
time critical applications.
UDP is used for games or
applications that require fast
transmission of data. UDP’s
stateless nature is also useful
for servers that answer small
queries from huge numbers of
clients.
Examples
HTTP, HTTPs, FTP, SMTP
Telnet etc…
DNS, DHCP, TFTP, SNMP,
RIP, VOIP etc…
Ordering of data
packets
TCP rearranges data packets
in the order specified.
UDP has no inherent order as
all packets are independent of
each other. If ordering is
required, it has to be managed
by the application layer.
Speed of transfer
The speed for TCP is slower
than UDP.
UDP is faster because there is
no error-checking for packets.
Reliability
There is absolute guarantee
that the data transferred
remains intact and arrives in
the same order in which it
was sent.
There is no guarantee that the
messages or packets sent
would reach at all.
Differences between TCP and UDP :-
TCP UDP
Sequenced Unsequenced
Reliable Unreliable
Connection-oriented Connectionless
Virtual Circuit Low Overhead
Acknowledgments No Acknowledgments
Windowing flow control No Windowing of flow control
Basic Features of TCP :-
Some of the basic features of TCP are :-
 Data Transfer
 Reliability
 Connections
 Flow Control
 Precedence and security
 Multiplexing
How it Works :-
There are four distinct elements that uniquely identify a TCP connections. They are :-
 IP address of the Sender
 IP address of the receiver
 TCP port of the sender
 TCP port of the receiver
To establish a TCP session, the two computers participating in the session must first go
through what is known as the ” three-way handshake” . There are two scenarios where a
three-way handshake would take place, namely :-
 Establishing a connection ( an active open )
 Terminating a connection ( an active close)
What are the categories of defects?
There are three main categories of defects:
1. Wrong: The requirements have been implemented incorrectly. This defect is a variance from
the given specification.
2. Missing: There was a requirement given by the customer and it was not done. This is a
variance from the specifications, an indication that a specification was not implemented, or a
requirement of the customer was not noted properly.
3. Extra: A requirement incorporated into the product that was not given by the end customer.
This is always a variance from the specification, but may be an attribute desired by the user of
the product. However, it is considered a defect because it's a variance from the existing
requirements.
4. Which test cases are written first: white boxes or black boxes?
5. Normally black box test cases are written first and white box test cases later. In order to write
black box test cases we need the requirement document and, design or project plan. All these
documents are easily available at the initial start of the project. White box test cases cannot
be started in the initial phase of the project because they need more architecture clarity which
is not available at the start of the project. So normally white box test cases are written after
black box test cases are written.
Black box test cases do not require system understanding but white box testing needs more
structural understanding. And structural understanding is clearer i00n the later part of project,
i.e., while executing or designing. For black box testing you need to only analyze from the
functional perspective which is easily available from a simple requirement document.
Explain Unit Testing, Integration Tests, System Testing and Acceptance Testing?
Unit testing - Testing performed on a single, stand-alone module or unit of code.
Integration Tests - Testing performed on groups of modules to ensure that data and control are
passed properly between modules.
System testing - Testing a predetermined combination of tests that, when executed successfully
meets requirements.
Acceptance testing - Testing to ensure that the system meets the needs of the organization and the
end user or customer (i.e., validates that the right system was built).
Can you explain the concept of defect cascading?
Defect cascading is a defect which is caused by another defect. One defect triggers the other defect.
For instance, in the accounting application shown here there is a defect which leads to negative
taxation. So the negative taxation defect affects the ledger which in turn affects four other modules.
What is the difference between pilot and beta testing?
The difference between pilot and beta testing is that pilot testing is nothing but actually using the
product (limited to some users) and in beta testing we do not input real data, but it's installed at the
end customer to validate if the product can be used in production.
What's the difference between System testing and Acceptance testing?
Acceptance testing checks the system against the "Requirements." It is similar to System testing in
that the whole system is checked but the important difference is the change in focus:
System testing checks that the system that was specified has been delivered. Acceptance
testing checks that the system will deliver what was requested. The customer should always do
Acceptance testing and not the developer.
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. This testing is more about ensuring that the software is
delivered as defined by the customer. It's like getting a green light from the customer that the
software meets expectations and is ready to be used.
Can you explain regression testing and confirmation testing?
Regression testing is used for regression defects. Regression defects are defects occur when the
functionality which was once working normally has stopped working. This is probably because of
changes made in the program or the environment. To uncover such kind of defect regression testing is
conducted.
If we fix a defect in an existing application we use confirmation testing to test if the defect is removed.
It's very possible because of this defect or changes to the application that other sections of the
application are affected. So to ensure that no other section is affected we can use regression testing to
confirm this.
How does load testing work for websites?
Websites have software called a web server installed on the server. The user sends a request to the
web server and receives a response. So, for instance, when you type www.google.com the web server
senses it and sends you the home page as a response. This happens each time you click on a link, do
a submit, etc. So if we want to do load testing you need to just multiply these requests and responses
"N" times. This is what an automation tool does. It first captures the request and response and then
just multiplies it by "N" times and sends it to the web server, which results in load simulation.
So once the tool captures the request and response, we just need to multiply the request and
response with the virtual user. Virtual users are logical users which actually simulate the actual
physical user by sending in the same request and response. If you want to do load testing with 10,000
users on an application it's practically impossible. But by using the load testing tool you only need to
create 1000 virtual users.
Can you explain an Application boundary?
The first step in FPA is to define the boundary. There are two types of major boundaries:
1. Internal Application Boundary
2. External Application Boundary
The external application boundary can be identified using the following litmus test:
1. Does it have or will it have any other interface to maintain its data, which was not developed
by you?.
2. Does your program have to go through a third party API or layer? In order for your application
to interact with the tax department application your code has to interact with the tax
department API.
3. The best litmus test is to ask yourself if you have full access to the system. If you have full
rights to make changes then it is an internal application boundary, otherwise it is an external
application
4. Can you explain boundary value analysis?
5. In some projects there are scenarios where we need to do boundary value testing. For
instance, let's say for a bank application you can withdraw a maximum of 25000 and a
minimum of 100. So in boundary value testing we only test the exact boundaries rather than
hitting in the middle. That means we only test above the max and below the max. This covers
all scenarios. The following figure shows the boundary value testing for the bank application
which we just described. TC1 and TC2 are sufficient to test all conditions for the bank. TC3
and TC4 are just duplicate/redundant test cases which really do not add any value to the
testing. So by applying proper boundary value fundamentals we can avoid duplicate test
cases, which do not add value to the testing.
6. Can you explain exploratory testing?
Exploratory testing is also called adhoc testing, but in reality it's not completely adhoc. Ad hoc
testing is an unplanned, unstructured, may be even an impulsive journey through the system
with the intent of finding bugs. Exploratory testing is simultaneous learning, test design, and
test execution. In other words, exploratory testing is any testing done to the extent that the
tester proactively controls the design of the tests as those tests are performed and uses
information gained while testing to design better tests. Exploratory testers are not merely
keying in random data, but rather testing areas that their experience (or imagination) tells
them are important and then going where those tests take them.
Can you explain DRE?
DRE (Defect Removal Efficiency) is a powerful metric used to measure test effectiveness. From this
metric we come to know how many bugs we found from the set of bugs which we could have found.
The following is the formula for calculating DRE. We need two inputs for calculating this metric: the
number of bugs found during development and the number of defects detected at the end user.
But the success of DRE depends on several factors. The following are some of them:
 Severity and distribution of bugs must be taken into account.
 Second, how do we confirm when the customer has found all the bugs. This is normally
achieved by looking at the history of the customer.

More Related Content

What's hot (18)

PPT
Networking 101
webhostingguy
 
PPT
Rpc Case Studies (Distributed computing)
Sri Prasanna
 
PPT
Application layer
Farah Hunny
 
PPTX
Application Layer
Tutun Juhana
 
PPTX
CCNA 1 Routing and Switching v5.0 Chapter 10
Nil Menon
 
PPT
Rpc (Distributed computing)
Sri Prasanna
 
PDF
Application layer
Sisir Ghosh
 
PPT
Design an Implementation of A Messaging and Resource Sharing Software
nilabarai
 
PDF
Ajp notes-chapter-04
Ankit Dubey
 
PPTX
Cs 704 d rpc
Debasis Das
 
PPTX
File transfer protocol- Gowdham
Gowdham P
 
PPT
Application layer protocols
JUW Jinnah University for Women
 
PDF
DNS server config on cisco packet tracer
Arjun Das
 
PPTX
Whole c++ lectures ITM1 Th
Aram Mohammed
 
PPTX
Application layer
reshmadayma
 
PPTX
Application layer in network system
Salauddin Rubel
 
DOCX
File Transfer Protocol(ftp)
MUHAMMAD KHURSHID AHMAD
 
DOCX
Pears
thips
 
Networking 101
webhostingguy
 
Rpc Case Studies (Distributed computing)
Sri Prasanna
 
Application layer
Farah Hunny
 
Application Layer
Tutun Juhana
 
CCNA 1 Routing and Switching v5.0 Chapter 10
Nil Menon
 
Rpc (Distributed computing)
Sri Prasanna
 
Application layer
Sisir Ghosh
 
Design an Implementation of A Messaging and Resource Sharing Software
nilabarai
 
Ajp notes-chapter-04
Ankit Dubey
 
Cs 704 d rpc
Debasis Das
 
File transfer protocol- Gowdham
Gowdham P
 
Application layer protocols
JUW Jinnah University for Women
 
DNS server config on cisco packet tracer
Arjun Das
 
Whole c++ lectures ITM1 Th
Aram Mohammed
 
Application layer
reshmadayma
 
Application layer in network system
Salauddin Rubel
 
File Transfer Protocol(ftp)
MUHAMMAD KHURSHID AHMAD
 
Pears
thips
 

Viewers also liked (16)

PPTX
St Valentine's Day
Any Ataide
 
DOCX
trabajo de biologia
Kevin Trujillo
 
PPTX
Gordon B. Hinckley
Batkholboo
 
PPT
Christmas 2011 - symbols
Any Ataide
 
PPTX
Presentación1
kellynoemipalacios
 
PPT
Alimentación+embarazo
Maria Rosa Ramos
 
PPT
Body language general
Any Ataide
 
PPTX
Common law
selenecorrea
 
PPTX
St valentine's day
Any Ataide
 
PPT
Testing tool classification
Pragya Rastogi
 
PDF
53678527 sintesis-asam-oksalat
Asep Nazmi
 
PPTX
Food and fashion
Any Ataide
 
PPTX
Tohoku earthquake 2011
Abby Jekabsons
 
PDF
Vb script
Pragya Rastogi
 
PPT
Test design techniques
Pragya Rastogi
 
PPTX
Verbeteren luchtkwaliteit binnen kinderdagverblijven
Eliane Khoury
 
St Valentine's Day
Any Ataide
 
trabajo de biologia
Kevin Trujillo
 
Gordon B. Hinckley
Batkholboo
 
Christmas 2011 - symbols
Any Ataide
 
Presentación1
kellynoemipalacios
 
Alimentación+embarazo
Maria Rosa Ramos
 
Body language general
Any Ataide
 
Common law
selenecorrea
 
St valentine's day
Any Ataide
 
Testing tool classification
Pragya Rastogi
 
53678527 sintesis-asam-oksalat
Asep Nazmi
 
Food and fashion
Any Ataide
 
Tohoku earthquake 2011
Abby Jekabsons
 
Vb script
Pragya Rastogi
 
Test design techniques
Pragya Rastogi
 
Verbeteren luchtkwaliteit binnen kinderdagverblijven
Eliane Khoury
 
Ad

Similar to Network Testing ques (20)

PPTX
Internet new
Utkarsh Agarwal
 
PPTX
Unit 6 : Application Layer
Chandan Gupta Bhagat
 
PPT
chapter-4-networking hjgjjgj did hfhhfhj
AmitDeshai
 
PPTX
applayer.pptx
ssuser8b4eb21
 
ODP
There and back again
Jon Spriggs
 
PPT
Application layer protocols
N.Jagadish Kumar
 
PPTX
System and network administration network services
Uc Man
 
PPTX
Computer Networks & internet protocols.pptx
jesudossai2
 
PPTX
IOT2.pptx is internet of things presentation
kaaraapatil
 
PPTX
PPT Unit II Network Infrastructure.pptx..
abhayagarwal76
 
PDF
Unit 5 Applicationaaaaaaaaaaaa Layer.pdf
AdityaGupta221734
 
PPT
Chapter Six Application Layer.ppt
GirT2
 
PPTX
OSI Application layer. tcp/ip application layer
artisticcc11
 
PPT
Networking Chapter 9
mlrbrown
 
PDF
6 networking
richarddxd
 
PPTX
Web Dev Research
nathomas82
 
PPT
Common Network Services
ŐŔaṉģ Zaib
 
PPTX
Computer Networking 101
Sameer Mahajan
 
PPTX
Introduction to the Internet and Web.pptx
hishamousl
 
Internet new
Utkarsh Agarwal
 
Unit 6 : Application Layer
Chandan Gupta Bhagat
 
chapter-4-networking hjgjjgj did hfhhfhj
AmitDeshai
 
applayer.pptx
ssuser8b4eb21
 
There and back again
Jon Spriggs
 
Application layer protocols
N.Jagadish Kumar
 
System and network administration network services
Uc Man
 
Computer Networks & internet protocols.pptx
jesudossai2
 
IOT2.pptx is internet of things presentation
kaaraapatil
 
PPT Unit II Network Infrastructure.pptx..
abhayagarwal76
 
Unit 5 Applicationaaaaaaaaaaaa Layer.pdf
AdityaGupta221734
 
Chapter Six Application Layer.ppt
GirT2
 
OSI Application layer. tcp/ip application layer
artisticcc11
 
Networking Chapter 9
mlrbrown
 
6 networking
richarddxd
 
Web Dev Research
nathomas82
 
Common Network Services
ŐŔaṉģ Zaib
 
Computer Networking 101
Sameer Mahajan
 
Introduction to the Internet and Web.pptx
hishamousl
 
Ad

Network Testing ques

  • 1. Specify the Port Number for AD, DNS, DHCP, HTTP, HTTPS, SMTP, POP3 & FTP? AD- uses LDAP Udp 389 and UDP 135, DNS- 53, DHCP-67,68, HTTP-80, HTTPS-,SMTP-25, POP3-110 & FTP-20,21. Explain the functionality of FTP Server? The FTP server is to accept incoming FTP requests. Copy or move the files that you want to make available to the FTP publishing folder for access. The default folder is drive:InetpubFtproot, where drive is the drive on which IIS is installed In the client-server model, a file server is a computer responsible for the central storage and management of data files so that other computers on the same network can access the files. A file server allows users to share information over a network without having to physically transfer files by floppy diskette or some other external storage device. What is Virtual Hosting? Also known as shared hosting, this form of web hosting should suffice for most everyone. Virtual hosting simple refers to the fact that your site is on one server, and that this server hosts mulitple sites. You are virtually shared - your site will not be the only one on this specific server. Very few sites would actually need the power of a dedicated server, so this option provides to be a reliable and cheap solution. How is the Cloud Computing different from primitive Client-Server Architecture? The primitive Client-Server architecture is a one-to-one communication between only two physical machines namely Client machine and Server machine (datacenter). Whereas the cloud computing, infrastructure is similar at the client side but varies at server-side. The server-side contains a main Cloud Controller that forwards the request to its worker machines known as Nodes. These nodes are a grid computing machines that dedicate all its resources to process application. These nodes are maintained in clusters. So a cloud computing infrastructure is quite complicated on server side that processes all the requests from clients and send the result back. What is meant by Middleware? Middleware is a distributed software needed to support interaction between clients and servers. In short, it is the software that is in the middle of the Client/Server systems and it acts as a bridge between the clients and servers. It starts with the API set on the client side that is used to invoke a service and it covers the transmission of the request over the network and the resulting response. It neither includes the software that provides the actual service - that is in the servers domain nor the user interface or the application login - that's in clients domain. What is Subnetting? Why is it used? Used in IP Networks to break up larger networks into smaller subnetworks. It is used to reduce network traffic, Optimized network performance, and simplify management i.e. to identify and isolate network problems.
  • 2. How network Gateway is different from Routers? Gateway A device connected to multiple physical TCP/IP networks capable of routing or delivering IP packets between them. Router It’s a layer 3 device that connects 2 different networks and routes packets of data from one network to another. It breaks up Broadcast domain as well as Collision Domain. What's the benefit of subnetting? Reduce the size of the routing tables. Reduce network traffic. Broadcast traffic can be isolated within a single logical network. Provide a way to secure network traffic by isolating it from the rest of the network. What are the differences between static ip addressing and dynamic ip addressing? With static IP addressing, a computer (or other device) is configured to always use the same IP address. With dynamic addressing, the IP address can change periodically and is managed by a centralized network service http://www.theshulers.com/whitepapers/internet_whitepaper/ Understanding Domain Name Servers and Web Addresses resolution The machines on web don't understand the human readable domain names (eg: www.humlog.net) but they need addresses in a format called IP address. So there must be someone sitting in between our browser and the web server (on which the web page is hosted/stored) who translates this human readable domain name to machine understandable IP address. This translation is called Domain Name Resolution and it can happen in your browser or in your computer, or in your router or on the web. Let us understand these behind-the-scenes processes. 1. All browsers have their own caches which store the most recently browsed domains and their IP addresses. So the first step in Domain Name Resolution is for the browser to check in its cache for an entry of the current domain name. If it finds an entry in cache, it reads the corresponding IP address and forwards it to the machines on web, so that they can find the address and return the contents sitting on that address. In this case the Domain Name Resolution happened in the browser's cache. 2. If the browser cannot find an entry in its cache, then the request for Domain Name Resolution goes to the Operating system's caches. If OS finds an entry in its cache, the Domain Name Resolution happens in the OS itself.
  • 3. 3. If the OS cannot find an entry in its cache, then the request for Domain Name Resolution goes to the DNS resolver configured in the computer. A DNS resolver contains address of the DNS server which will be used for Domain Name Resolution. Usually the DNS resolver is auto configured as part of IP configuration by the Internet service providers. 4. DNS resolver forwards the request to the DNS server. From here on, the process of Domain Name Resolution gets interesting. 5. A DNS server contains a mapping of domain names and their corresponding IP addresses and is capable of querying other DNS servers on web in case, it itself doesn't contain a domain name entry. 6. Every DNS server knows the address of the root DNS server which contains a mapping of all the top-level domains and their corresponding IP addresses. Top-level domains are the last part of your domain name (inwww.humlog.net, its net). For querying the root DNS server, the domain name is broken into parts starting backwards. So if the domain name is www.humlog.net, first part from backside is 'net'. A query is made to root DNS server asking for the IP address of the DNS server responsible for .net domains. 7. Now this DNS server, which is responsible for .net domains, is queried for the next part of the domain, i.e. humlog. This will return the address of the name server of the website (humlog.net) 8. In the final step, the name server of website is queried for the next part, i.e. www. This will return the IP address of the domain name 'www.humlog.net' and we can get to see the contents of the website. Usage TCP is used in case of non- time critical applications. UDP is used for games or applications that require fast transmission of data. UDP’s stateless nature is also useful for servers that answer small queries from huge numbers of clients. Examples HTTP, HTTPs, FTP, SMTP Telnet etc… DNS, DHCP, TFTP, SNMP, RIP, VOIP etc… Ordering of data packets TCP rearranges data packets in the order specified. UDP has no inherent order as all packets are independent of each other. If ordering is required, it has to be managed by the application layer.
  • 4. Speed of transfer The speed for TCP is slower than UDP. UDP is faster because there is no error-checking for packets. Reliability There is absolute guarantee that the data transferred remains intact and arrives in the same order in which it was sent. There is no guarantee that the messages or packets sent would reach at all. Differences between TCP and UDP :- TCP UDP Sequenced Unsequenced Reliable Unreliable Connection-oriented Connectionless Virtual Circuit Low Overhead Acknowledgments No Acknowledgments Windowing flow control No Windowing of flow control Basic Features of TCP :- Some of the basic features of TCP are :-  Data Transfer  Reliability  Connections  Flow Control  Precedence and security  Multiplexing How it Works :- There are four distinct elements that uniquely identify a TCP connections. They are :-
  • 5.  IP address of the Sender  IP address of the receiver  TCP port of the sender  TCP port of the receiver To establish a TCP session, the two computers participating in the session must first go through what is known as the ” three-way handshake” . There are two scenarios where a three-way handshake would take place, namely :-  Establishing a connection ( an active open )  Terminating a connection ( an active close) What are the categories of defects? There are three main categories of defects: 1. Wrong: The requirements have been implemented incorrectly. This defect is a variance from the given specification. 2. Missing: There was a requirement given by the customer and it was not done. This is a variance from the specifications, an indication that a specification was not implemented, or a requirement of the customer was not noted properly. 3. Extra: A requirement incorporated into the product that was not given by the end customer. This is always a variance from the specification, but may be an attribute desired by the user of the product. However, it is considered a defect because it's a variance from the existing requirements. 4. Which test cases are written first: white boxes or black boxes? 5. Normally black box test cases are written first and white box test cases later. In order to write black box test cases we need the requirement document and, design or project plan. All these documents are easily available at the initial start of the project. White box test cases cannot be started in the initial phase of the project because they need more architecture clarity which is not available at the start of the project. So normally white box test cases are written after black box test cases are written. Black box test cases do not require system understanding but white box testing needs more structural understanding. And structural understanding is clearer i00n the later part of project, i.e., while executing or designing. For black box testing you need to only analyze from the functional perspective which is easily available from a simple requirement document.
  • 6. Explain Unit Testing, Integration Tests, System Testing and Acceptance Testing? Unit testing - Testing performed on a single, stand-alone module or unit of code. Integration Tests - Testing performed on groups of modules to ensure that data and control are passed properly between modules. System testing - Testing a predetermined combination of tests that, when executed successfully meets requirements. Acceptance testing - Testing to ensure that the system meets the needs of the organization and the end user or customer (i.e., validates that the right system was built). Can you explain the concept of defect cascading? Defect cascading is a defect which is caused by another defect. One defect triggers the other defect. For instance, in the accounting application shown here there is a defect which leads to negative taxation. So the negative taxation defect affects the ledger which in turn affects four other modules. What is the difference between pilot and beta testing? The difference between pilot and beta testing is that pilot testing is nothing but actually using the product (limited to some users) and in beta testing we do not input real data, but it's installed at the end customer to validate if the product can be used in production. What's the difference between System testing and Acceptance testing? Acceptance testing checks the system against the "Requirements." It is similar to System testing in that the whole system is checked but the important difference is the change in focus: System testing checks that the system that was specified has been delivered. Acceptance testing checks that the system will deliver what was requested. The customer should always do Acceptance testing and not the developer.
  • 7. 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. This testing is more about ensuring that the software is delivered as defined by the customer. It's like getting a green light from the customer that the software meets expectations and is ready to be used. Can you explain regression testing and confirmation testing? Regression testing is used for regression defects. Regression defects are defects occur when the functionality which was once working normally has stopped working. This is probably because of changes made in the program or the environment. To uncover such kind of defect regression testing is conducted. If we fix a defect in an existing application we use confirmation testing to test if the defect is removed. It's very possible because of this defect or changes to the application that other sections of the application are affected. So to ensure that no other section is affected we can use regression testing to confirm this. How does load testing work for websites? Websites have software called a web server installed on the server. The user sends a request to the web server and receives a response. So, for instance, when you type www.google.com the web server senses it and sends you the home page as a response. This happens each time you click on a link, do a submit, etc. So if we want to do load testing you need to just multiply these requests and responses "N" times. This is what an automation tool does. It first captures the request and response and then just multiplies it by "N" times and sends it to the web server, which results in load simulation. So once the tool captures the request and response, we just need to multiply the request and response with the virtual user. Virtual users are logical users which actually simulate the actual physical user by sending in the same request and response. If you want to do load testing with 10,000 users on an application it's practically impossible. But by using the load testing tool you only need to create 1000 virtual users. Can you explain an Application boundary? The first step in FPA is to define the boundary. There are two types of major boundaries: 1. Internal Application Boundary 2. External Application Boundary The external application boundary can be identified using the following litmus test: 1. Does it have or will it have any other interface to maintain its data, which was not developed by you?. 2. Does your program have to go through a third party API or layer? In order for your application to interact with the tax department application your code has to interact with the tax department API.
  • 8. 3. The best litmus test is to ask yourself if you have full access to the system. If you have full rights to make changes then it is an internal application boundary, otherwise it is an external application 4. Can you explain boundary value analysis? 5. In some projects there are scenarios where we need to do boundary value testing. For instance, let's say for a bank application you can withdraw a maximum of 25000 and a minimum of 100. So in boundary value testing we only test the exact boundaries rather than hitting in the middle. That means we only test above the max and below the max. This covers all scenarios. The following figure shows the boundary value testing for the bank application which we just described. TC1 and TC2 are sufficient to test all conditions for the bank. TC3 and TC4 are just duplicate/redundant test cases which really do not add any value to the testing. So by applying proper boundary value fundamentals we can avoid duplicate test cases, which do not add value to the testing. 6. Can you explain exploratory testing? Exploratory testing is also called adhoc testing, but in reality it's not completely adhoc. Ad hoc testing is an unplanned, unstructured, may be even an impulsive journey through the system with the intent of finding bugs. Exploratory testing is simultaneous learning, test design, and test execution. In other words, exploratory testing is any testing done to the extent that the tester proactively controls the design of the tests as those tests are performed and uses information gained while testing to design better tests. Exploratory testers are not merely keying in random data, but rather testing areas that their experience (or imagination) tells them are important and then going where those tests take them. Can you explain DRE? DRE (Defect Removal Efficiency) is a powerful metric used to measure test effectiveness. From this metric we come to know how many bugs we found from the set of bugs which we could have found. The following is the formula for calculating DRE. We need two inputs for calculating this metric: the number of bugs found during development and the number of defects detected at the end user.
  • 9. But the success of DRE depends on several factors. The following are some of them:  Severity and distribution of bugs must be taken into account.  Second, how do we confirm when the customer has found all the bugs. This is normally achieved by looking at the history of the customer.