What is Client-Server and Web Based Testing: How to Test these Applications?

Do you know the difference between Client-Server Testing and Web-Based Testing and what are the things that we need to test in such applications?

This tutorial will give you the answers to the above questions in detail along with simple examples for your easy understanding.

Projects are broadly divided into two types of:

  • 2 Tier Applications
  • 3 Tier Applications

Client-server and web based testing (1)

CLIENT/SERVER TESTING

This type of testing is usually done for 2 tier applications (usually developed for LAN). We will be having Front-end and Backend here.

Applications launched on the front-end will have forms and reports which will be monitoring and manipulating data.

For Example, 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 types of applications would be:

  • User Interface Testing
  • Manual Support Testing
  • Functionality Testing
  • Compatibility Testing & Configuration Testing
  • Intersystem Testing

WEB TESTING

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 the browser would be developed in HTML, DHTML, XML, JavaScript, etc. (We can monitor through these applications).

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

The DB server would have Oracle, SQL Server, Sybase, MySQL, etc. (All data is stored in the database available on the DB server).

The tests performed on these types of applications would be:

  • User Interface Testing
  • Functionality Testing
  • Security Testing
  • Browser Compatibility Testing
  • Load/Stress Testing
  • Interoperability Testing/Intersystem Testing
  • Storage and Data Volume Testing

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 that can be applied to these types of applications, are

  • User Interface Testing for validation & user-friendliness.
  • Functionality Testing to validate behaviors, i/p, error handling, o/p, manipulations, service levels, the order of functionality, links, content of web page & backend coverage’s.
  • Security Testing
  • Browser Compatibility
  • Load/Stress Testing
  • Interoperability Testing
  • Storage & Data Volume Testing

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, quad base etc.,]

The tests performed on these applications would be

  • User Interface testing
  • Manual Support Testing
  • Functionality Testing
  • Compatibility Testing
  • Intersystem Testing

Enlisted below are some more points to clarify the difference between Client-Server, Web and Desktop applications.

Desktop Application:

  • Application runs in single memory (Front end and Back end in one place)
  • Single user only

Client/Server Application:

  • Applications run in two or more machines.
  • Applications are menu-driven.
  • Connected mode (connection always exists until logout).
  • A limited number of users.
  • Less number of network issues when compared to the web app.

Web Application:

  • Applications run in two or more machines.
  • URL-driven
  • Disconnected mode (stateless)
  • Unlimited number of users.
  • Many issues like Hardware Compatibility, Browser Compatibility, Version Compatibility, Security Issues, Performance Issues, etc.

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

For Client-Server application, users are well known, whereas for web application any user can log in and access the content, he/she will use it as per his intentions.

So, there are always issues of security and compatibility for a Web Application.

Over to you: On which application are you working on? Desktop, Client-Server or Web Application? What is your experience while testing these applications?

To get Software Testing articles in your inbox, click here to subscribe with your email address. 

Related Post

Leave a Reply

Your email address will not be published.