Monday, 7 September 2015

Cross Browser Compatibility Testing for Web Applications



Cross Browser Compatibility is one of the most influencing part of a website. A website should be compatible with the different configurations and settings of different browsers. It may not be feasible to test the website dimensions manually throughout all the different browsers. Therefore, we rely on automated testing tools which are extremely helpful in testing websites will all dimensions.  


Compatibility Issues:

The compatibility issues are as old as the browsers themselves are. The major issues can be listed as follows:

-          Multiple Browsers – Internet Explorer, Mozilla Firefox, Google Chrome, Safari

-          Multiple Versions of Browsers – IE (Version 7,8,9,10), Firefox(7.0, 8.0) etc.

-          Multiple Computer Platforms- Windows, Mac, Linux etc.

-          Multiple Screen Sizes – From PC, IPAD, to Smart Phones

-          Font Sizes

-          HTML Errors

Goals:

As per the above issues, Compatibility testing  should be performed on the following aspects:

-          Browser Compatibility: Different browsers have different configurations. The website coding and layout should be compatible with as many browser platforms. Stress should be given on the JQuery and AJAX calls and their uniformity should be ensured through multiple browsers and their multiple versions.

-          The different technologies used in developing the different components of the website, such as graphic designs, Animations, API integrations, etc., may not be compatible with the different versions of the Operating Systems.  Hence the Web Application needs to be tested across the different operating systems – Windows, Mac, Linux etc.

-          The use of mobile internet has led to the emergence of version of mobile browsers. Hence the web application needs to be tested for its responsiveness on various devices and the accessibility of the interactive components should be ensured throughout all the mobile versions on different mobile platforms

Checklist for ensuring Cross Browser Compatibility of Websites or Web Applications:

-          HTML,  HTML5, CSS Validation.

-          Font Size Validation, Special Characters Support, Character Encoding

-          Page Layout in different resolution

-          Image, Text Display and Alignment

-          Page Styles

-          Date Format

-          Page Zoom in and Zoom out functionality.

-          Video Settings and its Screen resolution.

-          Design, layout and color display.

-          Java Script, JQuery, GUI Animations, Ajax validations and their successful functionality.

Manual Cross Browsertesting is a matter of time and money. Paid tools can be used for those browsers which have high browser dependent functionality. However, free tools also verify cross browser compatibility to a sufficient extent. The different tools for compatibility testing are as follows:

-          Spoon Browser SandBox- It allows to use all web browsers without installing them in the machine. 

-          Browser Shots: It can run compatibility testing with greater customization. The steps need to be repeated for every test. When many browsers are selected at a time, this tool takes a lot of time to display the results. 

-          IE NetRenderer:  This tool allows for testing across all versions of Microsoft Internet Explorer.

-          IE Tab: It is a good tool to test on Internet Explorer using Firefox or Chrome.

-          IE Tester: This tool allows testing the website on multiple versions Internet Explorer at the same time using only one application.

-          Microsoft SuperPreview: This tool allows testing and debugging layout issues across different IE browsers.

-          Browsera (Paid Tool): It is an automated testing tool used to test the website and its elements in multiple browsers. It can be used to test for layout and scripting errors.

-          Adobe Browser Lab(Paid Tool):Web Pages can be previewed across multiple versions of multiple web browsers. Full screen shots can be viewed with customizable test settings.

-          BrowserCam(Paid Tool): It allows to view web pages across different platforms and browsers. This can be done either by automatically taking the screen shots or navigating through them automatically. 

-          BrowserSeal(Paid Tool): It captures an image of the website under different browsers . The images can then be navigated through to spot layout and UI issues.

-          CrossBrowser Testing(Paid Tool): This tool requires the tester to log in, then select the browser and the operating system for testing the website. 

-          Cloud Testing(Paid Tool): This tool allows to check the website on real operating systems in the cloud.

-          Selenium: It is testing framework for web applications. It is an open source software where the tests can be written in a number of programming languages.



Conclusion:
With the change in technology, users have different browsers and platforms. Web Applications cannot be developed on only single configuration and expected to be working for all others. Hence, crossbrowser compatibility should be considered an indispensable criteria for Web Applications.


Wednesday, 26 August 2015

Ensuring Multi Browser Compatibility of an application .



The complexity of software applications have increased due to the rapid evolution of web technologies. Certain web browsers are compatible with selective operating systems while certain browsers provide advanced privacy and automated features. Cross Browser Testing, or
Browser Compatibility Testing, for an application needs to be performed across multiple cross browser platforms, operating systems and mobile devices to uncover discrepancies. To ensure the browser compatibility of an application, it is important to consider all the methods that end users utilize to interact with the application.

The need for Cross-Browser Testing: 

One of the main reasons, to put an application through multi-browser testing, is to monitor the CSS style rendering across different browsers. Older versions of Internet Explorer are unable to support the newer CSS elements and HTML tags.

All the browsers do not interpret the Javascript/Jquery codes in the same way. Thus, a script may work on one browser and get rendered as non-responsive on the other. 

Web browsers today are not just limited to personal computers, but they extend to mobiles also. Hence, cross browser testing needs to be performed on mobile browsers as well.

The main reasons for performing Cross-Browsertesting can be summarized as follows:

            - Display text mismatch.
            - Difference in Page Layout, Div Size, Image Orientation.
            - CSS elements and HTML/HTML5 tags support.
            - Animation effects.
            - Ajax, JQuery functionality support.
            - Browser incompatibility.
            - Header and Footer Sections
            - Date Formats
            - Special Character Encoding

How to perform Cross-Browser Testing:

The first criteria, for performing a cross browser testing, is to select the most important and the most used ones from a plethora of available browsers. Reviewing the site analytic report of the application can aid the testers to determine the main browsers for testing.

The traditional way to get started with this testing procedure is to open up the application on multiple browsers sequentially and cross check against a set of desired results. Most of the time, the common browsers considered for testing are the latest versions of Mozilla Firefox and Google Chrome. However due to considerable differences in the operating system, the following browsers need to be considered:

  • Google Chrome (Windows and Mac)
  • Internet Explorer (Windows, Version 7 – 11)
  • Mozilla Firefox(Windows and Mac)
  • Safari (Windows and Mac)
  • iPhone
  • Droid
  • Windows Phone
  • iPad

By testing the application in a preferred browser, an idea of the application display and functionality is made. Then, testing is started with the primitive versions of the Internet Explorer gradually moving up the versions. This helps to identify the issues that are specifically related to Internet Explorer.  When testing with all the desktop browsers are completed, focus is shifted on the mobile web browsers.

Testing with all the desktop and mobile browsers can be a long process. Hence, the main checks performed include display, animations and those functionality that use background processes.


Testing Tools:

To automate the process of testing, there are certain cross browser testing tools available in the market. They are mentioned as follows:

Free:
            - Spoon Browsers
            - Browsershots
            - IE NetRenderer
            - IE Tab
            - IE Tester
            - Microsoft SuperPreview
Paid:
            - Browsera
            - Adobe browserLab
            - BrowserCam
            - Browsereal
            - Cross Browser Testing
            - Browserling
            - Selenium Web Driver
            - Rapise


There are certain versions of browsers which have gone almost extinct or those which are very troublesome. Fixing application issues may not be possible or might not be worth the trouble. In such cases, rather than fixing all style and animation issues, the main focus can be put on functionality and usability.

Conclusion:

With the constant releases of new browser versions, it is very important to keep track of the upgradations that may affect the application functionality. Cross browser Testing ensures that the website content displays and functions correctly on all preferred browsers.