Difference between Desktop, Client Server Testing and Web Testing

In this post, I am gonna give an answer to the reader's question.
There was one question asked by Srividya.

Desktop, Client Server Testing and Web Testing

Q #1) What is the difference between Client-Server and Web Testing?

Vijay: Well Srividya I would like to add one more testing type i.e Desktop Testing in this discussion. So now we have three testing types Desktop Application Testing, Client-Server Application Testing, and Web Application Testing.

Each one differs in the environment in which they are tested and you will lose control over the environment in which application you are testing, while you move from desktop to web applications.

Desktop Application runs on personal computers and workstations, so when you test the Desktop Application you are focusing on a specific environment. You will test complete application broadly in categories like GUI, functionality, Load, and backend i.e DB.

In the Client-Server Application, you have two different components to test. The application is loaded on the server machine while the application .exe on every client machine. You will test broadly in categories like GUI on both sides, functionality, Load, client-server interaction, backend.

This environment is mostly used in Intranet networks. You are aware of a number of clients and servers and their locations in the test scenario.

The Web Application is a bit different and complex to test as tester don't have that much control over the application. The application is loaded on the server whose location may or may not be known and no .exe is installed on the client machine, you have to test it on different web browsers.

Web applications are supposed to be tested on different browsers and OS platforms so broadly Web application is tested mainly for browser compatibility and operating system compatibility, error handling, static pages, backend testing, and load testing.

I think this will have an idea of all three testing environment. Keep in mind that even the difference exists in these three environments, the basic Quality Assurance and Testing principles remain the same and applies to all.

Recommended Reading

133 thoughts on “Difference between Desktop, Client Server Testing and Web Testing”

  1. I am feeling very happy while readying web site testing and i got good knowledge on three different applications of desktop,client server and web.plz maintain updation which are very useful for freshers and experience candidates.
    Thanx for valuable information.

  2. Hi vijay,
    There is no confusion in this article, every thing s fine. I would like to know what s a normal application,could u tell me a with a siple example.

  3. Great Info
    This site has answered to many questions I was looking for many days.

    Thanks to author
    Must say great collection…………….

  4. Hi,
    I am not convinced with your answer. so many flaws but a nice attempt. be clear in addressing, most people refer this site as a tool to enrich their knowledge.

  5. DeskTop Application : Example Yahoo Messenger. Never updates automatically. U have to run the updates always.
    Client Server Application : Its always connect to the server if any changes in application its automatically reflect in the application.

  6. thanks rahul,
    then yahoo messanger is desktop application or web application.plz explain me.
    coz yahoo messenger application resides in client’s machine and also it will contact server also to exchange information packets. so here am confused whether its client-server or desktop application

  7. @Rahini on
    Destop app–exe reside on local pc..

    C/S appll– —Application is loaded on server machine while the application exe on every client machine.

    Web Appli—Application is loaded on the server whose location may or may not be known(Mainly at ISS or tom cat..or appache..) and no exe is installed on the client machine..
    happy reading..

  8. thanks rahul,

    so yahoo messenger is nothing but thick client.i mean client needs to do everything here and is not dependent on any server.is it so.
    so thats why its also desktop application.
    but when v type some msg and press ok.first it goes to server or buffer. clarify me here. then from buffer or server that msg goes to respective user.
    am i write or wrong.

    i understood the concept u explained but still i need some more clarification regarding this example.
    i hope am not creating mess.

  9. Iam not able to understand what is this APACHE AND TOMCAT SERVER is all about..are they different ?
    Some say they are not and they are called as webapplication servers.By the way do application server and web server reside on the same machine or in different machines.How they are configured.
    How a application server contacts webserver or vice versa..again are they configured on differnet machines .I am totally confused please help me understand this.Respond me to this e mail with your answers norman_g40@yahoo.com

  10. Hi norman,

    Basically servers are to two types :
    1. Web servers ( Apache, IIS etc..)
    2. Applications servers ( Tomcat, weblogic..etc)

    1: A webserver is a computer that is running special software allowing people to connect to it from their browser.
    2.An application server is a software engine that delivers applications to client computers .

  11. Hi All,

    Hope this helps…

    Q: What is the difference between client-server testing and web based testing and what are things that we need to test?

    Ans: Projects are broadly divided into two types of:
    2 tier applications
    3 tier applications

    CLIENT / SERVER TESTING
    [a] This type of testing usually done for 2 tier applications (usually developed for LAN)
    Here we will be having front-end and backend.

    The application launched on front-end will be having forms and reports which will be monitoring and manipulating data

    Eg : applications developed in VB, VC++, Core Java, C, C++, D2K, PowerBuilder etc.,
    The backend for these applications would be MS Access, SQL Server, oracle, sybase, mysql, quadbase

    The tests performed on these type of applications would be
    – user interface testing
    – manual support testing
    – Functionality testing
    – compatability testing & configuration testing
    – intersystems testing

    WEB TESTING
    [b] This is done for 3 tier applications (developed for Internet / intranet / xtranet)

    Here we will be having Browser, web server and DB server.

    The applications accessible in browser would be developed in HTML, DHTML, XML, JavaScript etc.,
    (we can monitor thru these applications)

    Applications for the web server would be developed in Adv Java, ASP, JSP, VBScript, JavaScript, Perl, Cold Fusion, PHP etc.,
    (all the manipulations are done on the web server with the help of these programs developed)

    The DBserver would be having oracle, sql server, sybase, mysql etc.,
    (all data is stored in the database available on the DB server)

    The tests performed on these type of applications would be
    – user interface testing
    – Functionality testing
    – security testing
    – browser compatability testing
    – load / stress testing
    – interoperability testing/intersystems testing
    – storage and data volume testing

    A web-application is a three tier application.
    This has a browser (monitors data) [monitoring is done using html, dhtml, xml, javascript]-> webserver (manipulates data) [ manipulations are done using programming languages or scripts like adv java, asp, jsp, vbscript, javascript, perl, coldfusion, php] -> database server (stores data) [data storage and retrieval is done using databases like oracle, sql server, sybase, mysql] .

    The types of tests which can be applied on this type of applications are:
    1. User interface testing for validation & user friendliness
    2. Functionality testing to validate behaviors, i/p, error handling, o/p, manipulations, services levels, order of functionality, links, content of web page & backend coverage’s
    3. Security testing
    4. Browser compatability
    5. Load / stress testing
    6. Interoperability testing
    7. Storage & data volume testing

    a client-server application is a two tier application.
    This has forms & reporting at front-end (monitoring & manipulations are done) [ using vb, vc++, core java, c, c++, d2k, power builder etc.,] -> database server at the backend [data storage & retrieval) [ using ms access, sql server, oracle, sybase, mysql, quadbase etc.,]

    the tests performed on these applications would be
    1. User interface testing
    2. Manual support testing
    3. Functionality testing
    4. Compatability testing
    5. Intersystems testing

    Desktop:
    01. Application runs in single memory (Front end and Back end in one place)
    02. Single user only

    Client/Server:
    01. Application runs in two or more machines
    02. Application is a menu-driven
    03. Connected mode (connection exists always until logout)
    04. Limited number of users
    05. Less number of network issues when compared to web app.

    Web:
    01. Application runs in two or more machines
    02. URL-driven
    03. Disconnected mode (state less)
    04. Unlimited number of users
    05. Many issues like hardware compatibility, browser compatibility, version compatibility, security issues, performance issues, etc
    see friend when we consider the security testing, both application should well secured to internal and external threat.

    As per difference in both the applications come where, how to access the resources. In client server once connection is made it will be in state on connected, whereas in case of web testing http protocol is stateless, then there comes logic of cookies, which is not in client server.

    More for client server users are well known, whereas for web any user can login and access the content, he/she will use it as per his intentions.

    so, there are always issuses of security and compatibility for web application.

    Regards,
    Vijay

  12. Hi Shilpa,

    I have mentioned Types of Testing generally use in Practical as below:

    1.smoke and Sanity Testing.
    2.functionality Testing
    3.Compatibility Testing
    4.GUI Testing
    5.Regression Testing
    6.Re-Testing
    7.UAT
    These are the basic Testing but so many testings is there but these are depending upon the application functionalities.

    Thanks,
    Suresh
    bsuresh7282@gmail.com

  13. Hi

    Although I from travel field and try to stubborn in this field but this article and discussion helped me very much to understand the difference.

    I have an image but illogical but I m happy to get it.

    Thanks to all

  14. This blog is really good……Even complex terms are explained in a simpler way.

    Anyways, I have a question on my mind.

    What’s the difference between Test Engineer and Quality Engineer?
    Are both the terms one and the same?

Leave a Comment