More and more applications which need to be platform independent and distributed processing rely on the web as a software architecture.
Applications such as online shopping system,online registration system or process management system are typical examples which are implemented on the web architecture. Only a few commercial products have been announced to support web application testing. Some of them test the software components such as Java Applet and Active objects which are embedded in he web pages. Some extend traditional GUI testing tools to test the GUI events inside the web browsers.
Some help pixel-level comparison. Some check the documents for syntax and compatibility to popular web browsers.
Current web testing tools are mainly made to verify the syntax in HTML documents,check hyperlink integrity in a such of HTML documents,test the GUI components embedded in browsers,and measure the performance of
...the web application. Few testing tools consider web applications control and twofold via static and dynamic analysis. There are still some significant characteristics of web applications need to be studied,such as tag control and data dependencies of web applications programming modules.
Why testing Web Applications is different? Testing web applications is different because of many factors scenarios affecting the performance and user experience. Web applications can typically cater to a large and a diverse audience. Web Applications can also be exposed to wide range of security threats.
Web applications may open up illegal points of entry to the databases and other systems holding sensitive information. To ensure that the web application works reliably and correctly under different situations these factors need to be accounted for and tested. Hence a lot of effort needs to put inforTestPlanningandTestDesign.
Tes
Cases should be written covering the different scenarios not only of functional usage but also technical considerations such as Network speeds, Coreligionist,etc. For example an application may work fine on Broad Band internet users but may perform miserably for users with dial up internet connections. Web Applications are known to give errors on slow networks, whereas they perform well on high speed connections. Web pages don't render correctly for certain situations but work okay with others. Images may take longer to download for slower networks and the end user perception of the application may not be good.
- Factors effecting Testing of Web Applications: As mentioned above Web Applications can have a lot of variables affecting them such as:
Numerous Application Usage (Entry - Exit) Paths are possible Due to the design and nature of the web applications it is possible that different users follow different application usage paths. For example in an online banking application a user may directly go to "Bill Pay' page and other users may check account balances, view previous transactions and then "Pay the Bills". Generally a large number of usage paths are possible and all are supposed to work well.
All these Permutations and Combinations need to be tested thoroughly.
- People with varying backgrounds & technical skills may use the application Not all applications are self explanatory to all people. People have varying Intelligence application with "Drill-Down-Reports" may work out for certain users but not for others.
Although this affects the design of the applications, but these factors should be tested in usability testing of the applications
- Leanest versus Internet based Applications Intranet based applications generally cater to a controlled audience.
The
pullovers and architects can make accurate assumptions about the people accessing the APS and the hardware/software/technical specifications of the client machines. While it may be difficult to make similar assumptions for Internet Based Applications Also the intranet users can generally access the app from trusted' sources whereas for internet applications the users may need to be authenticated and the security measures may have to be much more stringent. Test Cases need to be designed totes the various scenarios and risks involved.
- The end users may use different types of browsers to access the app
Typically for internet based applications users may have different Browsers when accessing the APS. This aspect also needs to be tested. If we test the app only on II then we cannot ensure if works well on Netscape or Fire-Fox. Because these browsers may not only render pages differently but also have varying levels of support for client side scripting languages such as Java-script.
- Even on similar browsers application may be rendered differently based on the Screen resolution/Hardware/Software Configuration
Network speeds: Slow Network speeds may cause the various components of a Webbing to be unloaded with a time lag. This may cause errors to be thrown up. The testing process needs to consider as important factor specially for Internet based applications.
DAD(Americans with Disabilities Act): It may be required that the applications be compliant with DAD. Due certain disabilities, some of the users may have difficulty in accessing the Web Applications unless the applications are DAD compliant. The Application may need to be tested for compliance and usability.
Other Regulatory Compliance/Standards: Depending on the nature of the application and sensitivity of the data featured
the applications may have to be tested for relevant Compliance Standards.
This is more crucial for Web Based Applications because of their possible exposure to a wide audience.
Firewalls: As mentioned earlier Applications may behave differently across firewalls. May have been blocked. So the APS need to be tested for these aspects as well.
Accurateness: If the Application captures certain personal or sensitive information, it may be crucial to test the security strength of the application. Sufficient care need to be taken that the security of the data is not compromised. Why technology platforms affect testing?
Technology platform upon which the Web Application was built also creates different strengths and weaknesses.
Different Test Automation tools & packages are available for different Technology Platforms. This can influence the Test Strategy and the way in which Test Execution is done.
- Challenges in Testing Web Based Web Applications:
To ensure that sufficient Testosterone is provided for Web Based Applications and to provide a secure,reliable application to the user the above factors need to be considered. For internet based application accessibility and security can be important issues.
On the other hand they could end up exposing their security holes all over. Testing could be the last choice to ensure the safety of the data and the organization.
- Types Of Web Based Application:
Some Web Based applications use a two tier architecture ,and others use an n-tier architecture. Two-tier architecture: In a two tier architecture,the client is on the first tier. The database server and Web application server reside on the same server machine,which is the second tier.
This second tier serves the data and executes the business logic for the Web Application. Sanitations that favor
this architecture typically prefer to consolidate their application capabilities and database server capabilities on a single tier. The second tier is responsible for providing the performance characteristics for the organization's Web environment.
Three-Tier Web Application: Three-tier is a client-server architecture in which the user interfaces,functional process logic("business rules"boycotter data storage and data access are developed and maintained as independent modules,most often on separate platforms.
Apart from the usual advantages of modular software with well defined interfaces,the 3-tier architecture is intended to allow any of the 3-tiers to be upgraded or replaced independently as requirements or technology change. For example,a change of operating system in the presentation tier would only affect the seer interface code. Typically the user interface runs on a desktop PC or work station and uses a standard graphical user interface,functional process logic may consists of one or more separate modules running on a work station or application server and an READS on a database server or mainframe contains the computer data storage logic.
Presentation Tier: The presentation tier or User interface is the portion the user sees when hey open a web page in the browser. Let is as sample as you reading this article all the way to searching a catalog and purchasing a product using a shopping cart. Let is what is presented to the user on the client-side within their web browser.
Elf you were to view the source code,you would only see the code such as Tambala Script,and cascading style sheets. On some site,you may see Java applets and flash.
Viewing source code on web page you would NOT see database queries or loops or calls to classes or any behind-the-scenes
processing. In ASP.
Intend utilizing visual studio or usual web developer,developers can separate the user interface from the business logic and data access layer with various tools. ASP. Net allows using master pages to setup the site look and feel. As well,when creating the web form which utilizes the master page,you may create it and allow the code to be placed in a separate page,known as code behind,thus keeping your business logic in a separate layer from that look,feel.
Languages used in this layers are typically HTML,HTML,CSS and Java script.
Application-Tier(Business Logic/Logic Tier): The logic tier is pulled out from the presentation tier and,as its own layer,it controls an applications functionality by performing detailed processing. The Business logic,functional processing logic,business rules(all pertaining to the same thing),are kept in the separate layer. Len ASP.
Net,this is where you define your classes and source code. This can be App_code folder from your classes and methods . Web languages typically used in ASP. Et are IV and C# . You would not use in HTML or Javascript in this layer .
Len this layer you typically define your classes ,functions sub- procedures ,properties ,etc .
Data Tier: This tier consists of database servers .
Here information is stored and retrieved . This tier keeps data neutral and independent from application servers are business logic . Giving data its own tier also improves scalability performance . In ASP . Net , the data access layer is where you define your typed datasets and table adopters .
It is where you define your queries are stored procedures.
The business tier may then make use of this functionality . N your classes, rather than defining disaccharide ,you
may use a table adopter to access the data access layer.
Detailed architecture of 3-tier As an example of how this works, lets assume your creating a web page that allows the user to enter information which you wish to then enter in to a database. You first create a dataset and table adopter that allows insert in to the table, either by query or stored procedure. This your data access layer. You then create a class, which retrieves the information from the form.
Checks for field validations and then uses the table adapter to send the data to database.
You create a web form ,which can use a Greedier control or other controls to allow the user to input the data in to the web form. In the code behind of the web form, you handle the submit button click event ,and send the data from the form to your class, which sends the information to the database using the table adaptor.
Advantages of web application When utilized properly, using a multi-tier application architecture improves performance and scalability.
If a web page needs an update or redesign, all of this may be handled by altering the CSS and HTML,without affecting the business or data OIC.
Any of the three tiers may be replaced or upgraded individually with out affecting the other tiers. For instance, if you change the database on the backbend, it would not affect the presentation or business logic tiers, other than changing the database connection.
Comparison with 3-tier architecture Two-tier architecture is client/server architecture, where a request to do some task is sent to the server and the server responds by performing the task.
N a modern
two- tier architecture the server holds both application and the data. The application sides on the server rather than the client probably because the server will have more processing power and disk space than the PC.
Different Architectures
- Web Application Architecture:
Web application architecture is supported by current Web-related technologies. Let consists of three major tiers,the Web browser,the Web server , and optional database servers.
The information process in the application is passed through each tier. The user interaction is performed at the web browser tier.
The program logic is done at the web server tier. The database processing is done at the database server ire. Hence,the web application architecture is also known as a 3-tier application architecture. When the database server tier is omitted,it is known as a 2-tier application architecture.
The web browser is capable of retrieving hyper-text documents,as requested by the application users,from the web server via http protocol. Let renders the hyper-text document in HTML format on the screen. Contemporary web browsers also embed Java VIM and interpreter to execute the Java applets or Java scripts specified in the documents.
- Android essays
- Application Software essays
- Benchmark essays
- Computer Network essays
- Computer Programming essays
- Computer Security essays
- Computer Software essays
- Cryptography essays
- Data collection essays
- Data Mining essays
- Graphic Design essays
- Information Systems essays
- Internet essays
- Network Security essays
- Website essays
- World Wide Web essays
- Cloud Computing essays
- Computer Science essays
- Consumer Electronics essays
- Data Analysis essays
- Electronics essays
- engineering essays
- Enterprise Technology essays
- Hardware essays
- Impact of Technology essays
- Information Age essays
- Information Technology essays
- Modern Technology essays
- Operating Systems essays
- people search essays
- Robot essays
- Graphical User Interface essays
- Graphics Software essays
- Software Testing essays