Saturday, December 10, 2011

Health care domain interview questions

1. What is the objective of your project
2. What is the data flow of your project
3. What is the data model
4. What is underwritings?
5. What are various status of claim
6. What is EPR?
7. How can participant know whether the claim is denied or hold
8. What is COB
9. What is co-Insurance
10. What are the deductibles
11. What is copay
12. What is EDI
13. How you will track the metrics
14. Who is provider?

Wednesday, November 2, 2011

english grammar1

"Hi everyone, I feel good"

"I feel good today"

"I feel [now] that you should not have said that to her." or "I felt [at that time] that you should not have said that to her."

"I feel hurt when you say that" -- now or "I felt hurt when you said that"-- in the past

"Yes, Amanda is right [now]" or "Yes, Amanda was right [then]"

"He died for his country. He was a good soldier." -- He is dead, therefore he 'was'.

"I saw him run away" -- 'run' is an infinitive: I saw him run, I will see him run, I see him run, I have seen him run, etc.

"take three capsules daily after a meal". Take just 3 capsules after your choice of one meal in a day


One good grammar book is Michael Swan's Practical English Usage.

Tuesday, November 1, 2011

emulate vs simulate

ever since= since then

Emulation Vs. Simulation

1.

Computer emulation and simulation are different forms of copying something. Emulation copies another computer or machine, so that the software from one machine can run on an otherwise incompatible machine. Simulation copies a system or a situation. Some aspects of a simulation can be controlled by the user, while other parts are designed to act as they would if the situation were real instead of simulated.

1.
Emulation
*

Emulation is making one computer act like a different computer. One of the most popular applications of emulation technology is using an emulator program to run gaming software from outdated computers, like the Commodore 64, on new PCs. Gaming emulators can also make PCs run games from older consoles like Nintendo or Sega Genesis. Another practical application of emulation software is to emulate the OS, or operating system, of a different computer. An emulator can be used this way to make Mac software run on a PC or vice-versa.
Legality
*

Emulators that allow computers to run software from other types of computers, or even gaming consoles are perfectly legal. Many emulators are freeware and open source, meaning anyone can download them and anyone has access to the actual programming code. But many of the games that can be played through emulators are illegal. The read only memory games, or ROMs, are usually copies of copyrighted software. Those are illegal to distribute or download.
Other Devices
*
Emulators are also common for smart phones. smart phone keypad image by Jon Le-Bon from Fotolia.com

Emulators aren't only made for computers. Emulators are available for iPods, iPhones, Blackberries, Google's Android and other "smart" devices. Most of these emulators are designed primarily for game play. Some of them are fully and legally licensed and some are more homemade versions available for free.
Simulation
*

Simulation is also a from of mimicry, but it is different than emulation. A simulation is a computer recreation of a particular scenario. Simulations are designed to act like an authentic system or situation. Simulations are popular in the gaming world, one of the first being Microsoft's Flight Simulator. Many other games allow users to recreate theme parks, restaurants or historical battles. The Sims series is just a simulation of everyday life.
Other Uses
*
Pilots may log many hours in simulator cockpits before they actually fly a plane. flight deck image by Andrew Breeden from Fotolia.com

Simulations are valuable scientific tools. They are common in physics, biology, chemistry and engineering. They can allow scientists to study virtual scenarios that may be impossible to actually create. Simulations are also used in economics, mathematics, sociology and other fields. Simulators are also an integral part of flight training programs for pilots. Microsoft's Flight Simulator is just a game, but real flight simulators create a realistic, but perfectly safe experience for pilots in training.

2)
Wow! I hadn't thought about how similar these four words are. The common theme is they all mean "copy" in some way. But the context and usage can be different.

emulate

This is usually used with someone as an object.

For instance, You should emulate your grandmother. She is a wonderful person.

to use someone as a model because you think that person is excellent in some way; to try to achieve desired qualities by acting like someone who has those qualities

simulate

this has the idea of copying something so that the copy pretends to be the original thing

It isn't the original thing and isn't trying to be the original thing; the aim is to appear to be the original thing.

For instance, The suitcase is made of simulated leather. (simulated leather = some other material that is made to look a lot like leather)

mimic

Webster's 21st Century Dictionary says:

1. a person who imitate mannerisms of others (noun)

2. imitate as a mimic (verb)

When Mr. Jones shaves in the morning, his young son likes to mimic him. (The young boy makes shaving motions the way his father does.)

imitate

To me, this seems to be the most general of the four words. I think it can be used in the "emulate" sense, in the "simulate" sense, and in the "mimic" sense.

Webster's 21st Century Dictionary says:

have the same characteristics as

(But there's also the idea of copying something else.)

3)
The first question regarding the difference between simulator and emulator I encountered in my undergraduate class of computer organization and architecture. The lecturer gave the difference in the aspect of completeness. But, ever since I had been wondering about the difference. Therefore, today I decide to round up the difference based on my own life experience of using simulator and emulator.

Simulation is the imitation of another environment. For example, a flight simulator imitates the environment of flying an airplane in a little room. The true environment of flying is experienced in another environment that lacks some aspects like the possibility to die from a plane crash. So, simulation usually involves an environment and a person. Well, if not a person, another object. For example, a savanna simulator may include a lion to see how the lion will react to a certain condition. About simulation, you usually says: "I want to know how this person/animal/plant/object reacts in a particular environment".

Emulation is the imitation of an object as another object. For example, a PlayStation emulator makes PlayStation game CDs recognize a PC as the machine where they are intended to run. Another example, a man puts on fake breasts, wear woman clothing and soften his voice to emulate a woman. So, basically an emulation has a purpose to make its environment recognize an object as another object. This is why emulator needs to be complete. If, for example, the man emulating a woman fails to emulate a woman completely like urinating while standing, he will be found out not to be a woman. About emulator, you usually says: "I want to make this stuff be recognized as that stuff so that another thing that I have in mind will continue to interact with the emulated stuff in the way it interacts with the real stuff".

Wednesday, August 17, 2011

What is the Difference between Insure and Ensure?

The difference between insure and ensure is subtle, especially when one throws the related word “assure” into the mix. Some people have strict rules about the difference between insure and ensure, with guidelines for appropriate usage, while other people use these words more or less interchangeably. The important thing to know is that, most of the time, interchangeable use is correct, except in very special circumstances, which we will discuss in a moment. Thanks to the fact that these words sound similar, if you accidentally mix them up in a spoken sentence, someone is unlikely to call you out on the difference between insure and ensure.

Assure, insure, and ensure all come from the same Latin root which means “to make secure.” Assure entered the English language first, in the 14th century, with “ensure” and “insure” following in the 1600s. All of these words have very similar meanings, suggesting a sense of making something certain or guaranteeing something.

The main difference between insure and ensure is that you insure something to be prepared in case something bad happens, while you talk about taking steps to ensure that something will (or won't) happen. For example, you insure your house against water and fire damage, but you put snacks in your car to ensure that you will have snacks if you get stuck in traffic. “Assure” is usually used in reference to putting someone's mind at rest and guaranteeing that something will happen, as in “I assured Sally that the memo would be finished by 3:00.”

Because the difference between insure and ensure is subtle, many people use these words interchangeably, unless they are talking about an insurance policy, an agreement with a company in which the company agrees to pay out a set sum in the event of a problem. You insure houses, cars, and other properties, and you can also purchase health and life insurance to guarantee payouts in the event of injury, sickness, or death. In some nations, people refer to life insurance as life assurance, stressing the idea that a payout will be guaranteed at some point because everyone has to die eventually.

Here's an example of all three words used in a sentence: “Joe assured his wife that he would insure their home to ensure that earthquake damage would be covered.” In this case, the protagonist of our brief story assures someone, putting her mind at rest so that she doesn't have to worry by affirming that something will definitely happen. He claims that he will insure his property against damage from earthquakes, preparing for an unfavorable event, to ensure or be certain that if their home is damaged in an earthquake, they will be able to rebuild or repair it.

Monday, August 15, 2011

QTP Framework

To start the testing with QTP, there is an important concept to understand i.e. framework. Frameworks basically define the way to handle the different operations in different methods.

As we all known we can create the test in two ways in QTP i.e. by recording and by scripting. We should also know that how we can improve the quality of test by using Framework concept. Basically QTP supports three kind of framework i.e. Linear, Modular, and Keyword Driven Framework.

In all three frameworks, Linear Framework is very easy and catchy by all newbie and beginner of QTP. Basically Linear Framework deals with individual script which is recorded under one Action and running individual. I think we all done this thing in very first when we get the QTP but I’m very sure, not all one know that we created and executed the test under Linear Framework. Anyway this is not big deal. I was also not aware when I get the QTP first time. So this is very simple and easy way to create the test by navigating through the application. But by using this method there are some limitations which we can not cross. Sometime when we test some business processes in one application, we may feel that some operations we repeat in all Linear Framework Script. To handle this situation we go with Modular Framework which solves this kind of problem by dividing the single test in multiple part or module.

In modular framework, tester basically divides the test in different parts which give the facility to use the different part of scripts in any tests. That solves the many problem of repeataion of test and gives the facility to make the script reusable? So in one sentence, Division of Linear Framework script in different parts called Modular Framework.

To understand the keyword driven framework, tester should know the basic of programming because it deals with function. In programming, Function is an important part of programming as they allow you to create chunks of code that performs a specific task. Basically we create the functions in the one test and calling these functions as keyword in other tests therefore we are calling keyword driven framework. This is very important and useful framework to deal and handle many critical tasks in testing through QTP.

Tuesday, August 9, 2011

QTP Add ins


QTP supports various applications, But it won't support all the applications by default. We need to load the corresponding add-in.

For example, if you are going to use QTP for a java application you need to load java add-in.

This add-in concept will help QTP to support wide-range of applications without compromising the performance. And, it will improve object identification reliability.

Find below the Add-in list supported by QTP. If you know any other add-in available for QTP, you can mention it in the comments section.


In previous versions of QTP, only few below mentioned add-ins will be available as default support.


Default Support
1. Standard Windows applications (invisible in the add-in manager)
2. Web objects / Applications
3. ActiveX controls
4. Visual Basic applications

In the previous versions, below add-ins should be loaded separately.

Additional QuickTest add-ins Support
1. Java
2. Oracle
3. SAP
4. .NET
5. Web Forms
6. Siebel
7. PeopleSoft
8. Web services
9 Main frame (Terminal Emulator)

You can select the required Add-ins while starting the QTP.

The below add-in manager screen will appear when opening QTP. In the screen you can select the required add-ins using the check-box.

If you don't want to see this add-in Manager again, you can uncheck the "Show on Startup" checkbox.



You won't see this add-in Manager if you have unchecked "Show on Startup" checkbox.


To make it appear again, you need to check the "Display Add-in Manager on Startup" checkbox in the Options Dialog (Tools->Options).



Object Identification window (Tools->Object Identification...) will allow to handle properties of Test Object classes available in each loaded add-ins.

Whenever we open an existing Test, we should load all the add-ins used in that particular Test. Otherwise the below message will be shown.

"The following add-ins were associated with your test but are not currently loaded."

Difference between qtp licenses

The seat license is specific to computer on which it is installed. Each installation of quick test pro requires a distinct permanent license key. When a QA Engineer selects seat license option during initial software installation, he/she also gets a 14 day evaluation period during which the company much request a QTP license code for a permanent license from HP/Mercury customer service.

The concurrent license is specific to organization on which it is installed. Each license entitles the company to one additional concurrent user running automated testing tool. There is no limit to the number of qtp 9.1 installations around company, but a special concurrent license server regulates the number of computers that can run a copy of quick test professional at any time.

Tuesday, July 12, 2011

Test Automation Process Overview

Test automation is the use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions.[1] Commonly, test automation involves automating a manual process already in place that uses a formalized testing process.

Overview

Although manual tests may find many defects in a software application, it is a laborious and time consuming process. In addition, it may not be effective in finding certain classes of defects. Test automation is a process of writing a computer program to do testing that would otherwise need to be done manually. Once tests have been automated, they can be run quickly and repeatedly. This is often the most cost effective method for software products that have a long maintenance life, because even minor patches over the lifetime of the application can cause features to break which were working at an earlier point in time.

There are two general approaches to test automation:

* Code-driven testing. The public (usually) interfaces to classes, modules, or libraries are tested with a variety of input arguments to validate that the results that are returned are correct.
* Graphical user interface testing. A testing framework generates user interface events such as keystrokes and mouse clicks, and observes the changes that result in the user interface, to validate that the observable behavior of the program is correct.

Test automation tools can be expensive, and it is usually employed in combination with manual testing. It can be made cost-effective in the longer term, especially when used repeatedly in regression testing.

One way to generate test cases automatically is model-based testing through use of a model of the system for test case generation but research continues into a variety of alternative methodologies for doing so.[citation needed]

What to automate, when to automate, or even whether one really needs automation are crucial decisions which the testing (or development) team must make. Selecting the correct features of the product for automation largely determines the success of the automation. Automating unstable features or features that are undergoing changes should be avoided.

Code-driven testing

A growing trend in software development is the use of testing frameworks such as the xUnit frameworks (for example, JUnit and NUnit) that allow the execution of unit tests to determine whether various sections of the code are acting as expected under various circumstances. Test cases describe tests that need to be run on the program to verify that the program runs as expected.

Code driven test automation is a key feature of Agile software development, where it is known as Test-driven development (TDD). Unit tests are written to define the functionality before the code is written. Only when all tests pass is the code considered complete. Proponents argue that it produces software that is both more reliable and less costly than code that is tested by manual exploration. It is considered more reliable because the code coverage is better, and because it is run constantly during development rather than once at the end of a waterfall development cycle. The developer discovers defects immediately upon making a change, when it is least expensive to fix. Finally, code refactoring is safer; transforming the code into a simpler form with less code duplication, but equivalent behavior, is much less likely to introduce new defects.
[edit] Graphical User Interface (GUI) testing

Many test automation tools provide record and playback features that allow users to interactively record user actions and replay them back any number of times, comparing actual results to those expected. The advantage of this approach is that it requires little or no software development. This approach can be applied to any application that has a graphical user interface. However, reliance on these features poses major reliability and maintainability problems. Relabelling a button or moving it to another part of the window may require the test to be re-recorded. Record and playback also often adds irrelevant activities or incorrectly records some activities.

A variation on this type of tool is for testing of web sites. Here, the "interface" is the web page. This type of tool also requires little or no software development.[citation needed] However, such a framework utilizes entirely different techniques because it is reading HTML instead of observing window events.[citation needed]

Another variation is scriptless test automation that does not use record and playback, but instead builds a model of the application under test and then enables the tester to create test cases by simply editing in test parameters and conditions. This requires no scripting skills, but has all the power and flexibility of a scripted approach. Test-case maintenance is easy, as there is no code to maintain and as the application under test changes the software objects can simply be re-learned or added. It can be applied to any GUI-based software application.
[edit] What to test

Testing tools can help automate tasks such as product installation, test data creation, GUI interaction, problem detection (consider parsing or polling agents equipped with oracles), defect logging, etc., without necessarily automating tests in an end-to-end fashion.

One must keep satisfying popular requirements when thinking of test automation:

* Platform and OS independence
* Data driven capability (Input Data, Output Data, Metadata)
* Customizable Reporting (DB Access, crystal reports)
* Easy debugging and logging
* Version control friendly – minimal binary files
* Extensible & Customizable (Open APIs to be able to integrate with other tools)
* Common Driver (For example, in the Java development ecosystem, that means Ant or Maven and the popular IDEs). This enables tests to integrate with the developers' workflows.
* Support unattended test runs for integration with build processes and batch runs. Continuous Integration servers require this.
* Email Notifications (automated notification on failure or threshold levels). This may be the test runner or tooling[clarification needed] that executes it.
* Support distributed execution environment (distributed test bed)
* Distributed application support (distributed SUT)

Framework approach in automation

A framework is an integrated system that sets the rules of Automation of a specific product. This system integrates the function libraries, test data sources, object details and various reusable modules. These components act as small building blocks which need to be assembled to represent a business process. The framework provides the basis of test automation and simplifies the automation effort.
Defining boundaries between automation framework and a testing tool

Tools are specifically designed to target some particular test environment. Such as: Windows automation tool, web automation tool etc. It serves as driving agent for an automation process. However, automation framework is not a tool to perform some specific task, but is an infrastructure that provides the solution where different tools can plug itself and do their job in a unified manner. Hence providing a common platform to the automation engineer doing their job.

There are various types of frameworks. They are categorized on the basis of the automation component they leverage. These are:

1. Data-driven testing
2. Modularity-driven testing
3. Keyword-driven testing
4. Hybrid testing
5. Model-based testing

Notable test automation tools
Tool name Produced by Latest version
HP QuickTest Professional HP 11.0
IBM Rational Functional Tester IBM Rational 8.2.0.2
Parasoft SOAtest Parasoft 9.0
QF-Test Quality First Software GmbH 3.4.0
Ranorex Ranorex GmbH 3.0
Rational robot IBM Rational 2003
Selenium Open source 1.0.10
SilkTest Micro Focus 2010 R2 WS2
TestArchitect LogiGear 6.0
TestComplete SmartBear Software 8.5
Testing Anywhere Automation Anywhere 7.0
TestPartner Micro Focus 6.3
TOSCA Testsuite TRICENTIS Technology & Consulting 7.2.2[3]
Visual Studio Test Professional Microsoft 2010
WATIR Open source 1.6.5
WebUI Test Studio Telerik, Inc. 2011.1

Sunday, July 3, 2011

Difference between says and said in Direct speech

I would say that you would use says when you're talking about something which has been said very recently and is still true. For example:

You and Mike are in the living room. He says "I'm hungry". You go into the kitchen and say to another friend "Mike says he's hungry, so shall we make some lunch now?"

D.S. : Kamala said, 'I meet (simple present) my friend often.'.
I.S. : Kamala said that she met (simple past) often.
A reported verb in the simple past in direct speech remains as it is even in the indirect speech, only if the reporting verb (verb outside the quotations) is in the present/ the future tense
D.S.: Kamala says, 'I went there yesterday'.
Here the reporting verb 'says' is in the present tense. So the tense of the reported
verb, 'went' (simple past) remains as it is.
I.S.: Kamala says that she went out yesterday.
If the reporting verb is in the past tense the tense of the reported verb
must be changed and the simple past must be changed into past perfect,
whether it is an immediate past action or distant past action. ('long past' as
you say)
e.g. : The constable said to the inspector, 'We arrested him ten minutes
ago' (Ten minutes ago- not distant/ long
past). Even then the I.S. is:The constable told the inspector that they
had arrested him ten minutes before
It is not question of near/ immediate past or distant past/ long past. If is depends on whether the reporting verb is in the present or the past tense.
Q. (i) I read in a book (DGP publications) that long past actions changed from D.S to I.D.S
simple past - Past perfect tense.
e.g.: He said, 'Rama Killed Ravana'
He said that Rama had killed Ravana.
(ii) He said, 'I lived many years in England.'
He said that he lived many years in England.
Please explain above example.
A. (i) D.S. : The teacher is saying, 'Rama killed Ravana'.
I.S. : The teacher is saying (Reporting verb - present tense) that Rama killed
Ravana. (Correct). Here, we don't say,
Rama had killed Ravana.
(ii) Similarly: D.S. : He says, 'I lived many years in England'.
I.S.: He says that he lived many years in England.
D.S.: He said, 'I lived many years' in England.
I.S.: He said that he had lived... in England.
Please understand the use of the past perfect tense correctly. The past perfect is used for the earlier of two past actions.
He told me that he had seen the movie. There are two past actions here - 1) His
telling me, and 2) his seeing the movie. Both are past actions. However, his seeing
the movie is the earlier, and his telling me about it is the later past action. So, his seeing the movie - must be in the past perfect tense.
Also look at the following:
He slowly got up from bed. He remembered what had happened the night before. Two
strangers had entered his room about 6 in the evening yesterday. They had hit him
hard on the head. That was all that was able to recollected. He now looked around. His wrist watch and rings he had kept on the table were no longer there. He understood that the strangers had taken them away.
Observe that his getting up slowly is a past action. all the other events had taken place 'yesterday', that is, they are all earlier past actions. So they are in the past perfect tense. So the use of past perfect has no connection with time of happening.

Sunday, May 22, 2011

AVCHD(.mts) files for HD cams

Most of us(even me in the list) don't know how to play AVCHD files or .mts files.

Guys, the files can be only played in Blue ray player. Listen, even DVD writer can't recognize these files and even can't write them into DVD. only Blue ray writer capable of writing them into CD or DVD. You must have Blue ray player in order to play .mts files. You may ask then how to play them in normal DVD player. The solutions is we need to convert them into .mpeg/mp4/DVD format in order to play.

Does sony has provided this option? Yes sony does...

Sony has provided PMB software along with your camcorder. You need to install that software.

Now Go to Start-> Go to Programs->Then PMB-> Then PMB Launcher->View->Index view

Once you select Index view it will display only register folders

If you have .mts file and if that is not registered then it won't be displayed in index menu

Now inorder to register folder you need to go to File->Register Folders

then all the register folder will be displayed in the index view page. Here you need to select .mts files and right click select convert option then select format you want to convert.

So guys enjoy...

Saturday, March 19, 2011

Compatibility Testing

This is for those who are looking for Compatability testing

Compatibility testing, part of software non-functional tests, is testing conducted on the application to evaluate the application's compatibility with the computing environment. Computing environment may contain some or all of the below mentioned elements:

* Computing capacity of Hardware Platform (IBM 360, HP 9000, etc.)..
* Bandwidth handling capacity of networking hardware
* Compatibility of peripherals (Printer, DVD drive, etc.)
* Operating systems (MVS, UNIX, Windows, etc.)
* Database (Oracle, Sybase, DB2, etc.)
* Other System Software (Web server, networking/ messaging tool, etc.)
* Browser compatibility (Firefox, Netscape, Internet Explorer, Safari, etc.)

Browser compatibility testing, can be more appropriately referred to as user experience testing. This requires that the web applications are tested on different web browsers, to ensure the following:

* Users have the same visual experience irrespective of the browsers through which they view the web application.
* In terms of functionality, the application must behave and respond the same way across different browsers.

Some typical compatibility tests include:

* Testing a Web site, or Web-delivered application for compatibility with a range of the leading browsers and desktop hardware platforms.
* Testing a peripheral with a wide range of PCs.
* Testing a server with different add-in cards, applications, and operating systems.
* Testing an application on a range of different operating systems and in combination with other applications.
* Verifying the compatibility and interoperability of a set of enterprise-class applications in a complex hardware and software environment designed to meet your specific business needs.


Our typical compatibility test services includes:

* Various Hardware Configurations
* Different Operating Systems / Platforms
* Various Network Environments
* Various Computer Peripherals (Printers, Zip drives, USBs, etc.)
* Various Third-party Software (Browsers, Firewalls, Network, Multimedia plug-ins, etc.)

Our compatibility test lab is equipped with range of current OS/Platforms along with facility to test across older versions or the latest beta versions based on the client needs.

Here is a matrix to display some of the OS/Browsers combinations for web applications;

Browser/OS Windows XP Windows Vista Windows 2003 Windows 2000 Macintosh
IE7 N/A N/A
IE6 N/A N/A
FF2
FF3
Safari 3.0
Opera 9.24

installation / un-installation process of various application setups on different Operating Systems and hardware configurations.


Sales and support of a new software product can be seriously complicated by compatibility problems that emerge when your product enters into the market. The main challenges are the negative client feedback and high cost of customer support due to incompatibility between your product and other popular software applications and operating systems already used by your clients. The answer to the problem is a comprehensive compatibility testing

Evaluation: Identifying the customer's requirements and compatibility issues.
Planning: Determining possible test scenarios and coverage measurements.
Execution: Executing test by our experienced test engineers against the created required hardware and software environment.
Reporting: Reporting of used Test environments , test cases, and found defects and issues together with analysis of possible causes and fixing suggestions


Software Test Environments
Browsers Firewalls Network System Management
Anti-Virus File Management VPN Virtual Machines
CD Soft e-mail Internet security Server
Archivers Graphics Updaters Downloader’s
Anti-Spyware Media Players Synchronization Internet security
Anti-Spam Drivers Instant Messengers Search


Hardware Test Environments
Vendor Acer, Compaq, Dell, Hewlett-Packard, IBM
Bus AGP, USB, PCI, ISA
BIOS Phoenix, Award, AMI, Compaq
Chipset Intel, VIA, AMD, ATI, SIS
CD-ROM/DVD-ROM Drives Samsung, LG, Compaq, Sony (2X to 52X and higher)
Hard Drive IDE, ATA-100, USB, SCSI
Audio Adapters Adlib, Creative Labs, Logitech, Media Vision, Roland
Printers Canon, Epson, Hewlett-Packard, Panasonic
Network 3Com, ATT, Zyxel, Intel, Cisco, U.S. Robotics
Graphics Adapters ASUS, Gigabyte, Saphire, Microstar, S3, Trident

Browser Compatibility:
This tutorial explains why you may be seeing browser display errors and recommends steps to avoid these problems. The Browser Photo service helps you know if you have browser display errors by showing you actual snapshots of your page under different browsers, computers, and screen resolutions.

HTML Toolbox shows you whether display errors are due to browser compatibility problems or HTML code errors. HTML Toolbox has a one-click repair feature that repairs most coding errors, but in some cases your display problems may be due to other factors.

What Causes Browser Display Differences?

* Different Browsers
* Different Browser Versions
* Different Computer Types
* Different Screen Sizes
* Different Font Sizes
* HTML Errors
* Browser Bugs



What You Can Do

* Set a Goal
* Stay Away from Cutting Edge HTML
* Check Browser Compatibility
* Validate Your Pages
* Trial and Error Debugging


What Causes Browser Display Differences?



Different Browsers

Your Web browser is a translation device. It takes a document written in the HTML language and translates it into a formatted Web page. The result of this translation is a little like giving two human translators a sentence written in French and asking them to translate it into English. Both will get the meaning across, but may not use the same words to do so.



The basic rules for translating HTML documents are established by the World Wide Web consortium, which publishes the official HTML standards. But there's considerable room for interpretation within those ground rules.

For example, the HTML standards say that the TABLE tag should support a CELLSPACING attribute to define the space between parts of the table. But standards don't define the default value for that attribute, so unless you explicitly define CELLSPACING when building your page, two browsers may use different amounts of white space in your table.



In addition, the HTML standards usually run ahead of what the browsers support. No browser as yet supports 100% of the HTML Version 5 standard, but some browsers come closer than others. Over the past few years Internet Explorer has done a much better job of this than Netscape Navigator, though Opera has done arguably the best job.



But since support for the latest HTML tags isn't universal, you could be building your pages with parts of the language that not all browsers understand. In that case the browser will ignore that part of your page it can't translate, and the way your page displays will be affected.



This problem is further complicated by browser-specific "HTML extensions." Back during the heyday of the Browser Wars, both Netscape and Microsoft tried to get a competitive edge by running ahead of the HTML standards, inventing their own tags and attributes.



The theory was that Web designers would fall in love with these attributes and put little buttons at the bottom of the page saying, "Best viewed with Netscape Navigator." So Internet users would rush to download that browser and, voila, Netscape would win the Browser Wars.



In practice no Internet user will download a new browser just to view your Web site, so these HTML extensions only created headaches for Web designers.



The best way to minimize these problems is to pay attention to browser compatibility when building your Web page. Avoid using HTML extensions and be careful about using cutting-edge features of the language that may not yet be supported by all the major browsers.



We also recommend you test your pages with HTML Toolbox and review its Browser Compatibility report.



Different Browser Versions

The major difference between two versions of the same browser is their support for newer portions of the HTML language. A new browser is generally better at displaying Web pages than an old one.



However, Internet users tend to upgrade their browser based on the addition of new features, like email integration and instant messaging. If a user doesn't care about these features, they're happy to keep surfing the Web with their old browser.


Different browser versions can break pages.

That presents a problem for Web designers, because for some length of time after the new browser appears, a significant minority of people will still use the previous version. So rushing to build pages with the HTML features supported by the new browser will have to wait.

A good rule of thumb is to design your pages to work for the last two versions of the major browsers.



While a handful of people use browsers older than that, their numbers aren't large enough to justify the sacrifice required to support them. A few people still use Version 3 browsers, but these browsers don't support Cascading Style Sheets, which are the most important addition to HTML in the last 6 years.



Also note that new browser versions sometimes represent major changes in a browser, and in these cases all bets on the browser's behavior are off.

For example, Navigator Version 6.1 is a complete rewrite of Netscape's browser, so a page that worked well under Navigator Version 4 may not work under Version 6. That's especially true if you use Dynamic HTML on your pages.



Different Computer Types

The Macintosh is still used by 12% of computer users, and has a very loyal following among graphic designers and publishers. In theory, if you view your page on both a PC and a Mac using the same version of the same browser, it should display the same, right?



In practice that's rarely the case. There are three reasons for this:



* Font Availability. When you tell your Web page to use a particular typeface, such as "Arial," you may not always get the font you want. Fonts are a computer resource, and not all computers have the same fonts as your computer. That's true even between different PCs, but it's especially true between the PC and the Mac. If the typeface of your page suddenly changes between these computers, you've probably used a font that isn't available on both computer types.

* Font Size. The Mac will generally render your typeface in a smaller pixel size than the PC will. That's especially true if you use the FONT tag to set your type size, since this tag uses abstract units to define size. You can avoid this problem is you use Cascading Style Sheets to set your font size in pixels. ac.

* Internet Explorer. Microsoft outsources the development of Internet Explorer for the Mac, and so to a large extent this is a different browser from the PC version. In particular, the Mac version of Internet Explorer is prone to quirks and bugs that you won't see in the PC version. If you check your Web page under only one browser on the Mac, do so under Internet Explorer!



Our free Webmaster Tips Newsletter archive contains a number of important tips for avoiding problems between the PC and Mac.



Different Screen Sizes

If you don't test your pages using different screen resolutions, your page may be stretched to fit a large screen, or be cropped to fit a small screen.

Many experienced Web designers use HTML tables to control their page layout, yet they design their pages on large, 1024x768 pixel screens. When these pages are displayed on smaller computer screens, the browser may not be able to fit all the content onto the screen. In these cases, the content will scroll of the right of the page. While this may not sound like much of a problem, users hate scrolling left and right to view a page.



This problem should be easy to avoid, yet a surprising number of otherwise well-designed Web sites don't fit within the standard 800-pixel PC computer screen. This is especially a problem for pages built by graphic artists using a Macintosh, whose standard screen size is 1024x768. Many designers forget that designing for an 800-pixel screen means using roughly a 750-pixel layout.



Many less experienced Webmasters design their pages without tables, or dimension their tables to fit 100% of the screen width. If you've built your Web page this way on a computer with an 800-pixel screen, you may be surprised how your page is stretched to fit a larger screen. Text and graphics that were adjacent on your smaller screen may not be so on a large screen.



To avoid this, wrap the content of your page inside a single, large, one-cell table. Set the width of this table to be about 560-pixels, if you're designing for a 600 pixels layout, or 750-pixels if you're designing for an 800 pixel layout.



Because the majority of Internet users have a screen resolution of 800 pixels or less, it's a bad idea to design your site for a larger screen.



Different Font Sizes

Most browsers allow users to customize their default font size. Many users who work on computers all day do this to reduce eye strain. As a result, user preferences may cause the typeface that you used to design your Web page to increase as much as 50% larger in a user's browser. This increase in font size can hurt many carefully-planned page designs.

HTML Errors

Whether you're an HTML coder who builds Web pages by working with the raw HTML tags, or a designer using a WYSIWYG editor like FrontPage or Dreamweaver, the odds are your finished Web page will contain HTML errors.



We've tested over 52 million Web pages at NetMechanic. A recent sampling of results from our HTML Toolbox showed that a shocking 85% of these pages contained at least one HTML error!



Does that mean that 85% of Web pages are broken? Probably not, but it greatly increases the chance that these pages will have browser display problems.



An HTML error is some spot on your Web page where you've violated the official rules of HTML. For example, you may have two tags that overlap one another in a way that the standards say isn't legal.



In practice, the major browsers are robust and forgive many of these HTML errors. But not all browsers forgive the same errors. So your favorite browser may display your Web page without error, but another browser may be seriously affected by the same error.


HTML errors can destroy your pages under some browsers.

For example, look at these images. The HTML code on this page forgets to close a single TABLE tag, which is a violation of the HTML rules. Internet Explorer forgives this error and displays the page correctly; Netscape Navigator can't recover from the errors and doesn't display the page at all!



The best way to avoid HTML errors is to validate your Web page with a tool like HTML Toolbox. A validator will scan your page and spot areas where you've violated the rules of good HTML. Correcting these errors and following the rules of good HTML goes a long way toward eliminating browser display errors.



The free sample of our HTML Toolbox will give you a full validation report on your Web page. The subscription version of this service can also automatically repair the majority of HTML errors it finds on your page. We don't guarantee that HTML Toolbox will cure all your problems, but it will save you hours of time spent solving these problems by hand.



Browser Bugs

As you've probably seen by now, building a Web page that displays well on all browsers isn't easy. To make matters worse, sometimes you've done everything right, and your page still doesn't display correctly under one specific browser. It's not your fault - you've just encountered a browser bug.

Unfortunately, browser bugs are a fact of life for Web designers. Each browser has its own unique set of errors and quirks that you have to adapt to. That's especially true with Version 4 of Netscape Navigator, whose early editions were rushed out the door to beat Internet Explorer to market. A columnist for WebReference recently called Navigator Version 4 "truly terrible browser."


Browser quirks can break your pages.

For example, take perhaps the most widely encountered browser bug in existence. The HTML standards say that when you build an HTML table, you don't have to explicitly close each table cell with a closing tag. This closing tag is optional. Yet unless you explicitly close your table cells, Navigator 4 will not display your table if it is nested inside another table. Since nesting tables is common practice to control page layout, this bug wrecks many well-designed pages.



Netscape isn't the only browser prone to bugs. Internet Explorer for the Macintosh has a number of bugs and quirks in the way it handles text spacing.

When you

encounter a browser bug, it often means resorting to trial-and-error debugging to remove the problem. But before you resort to that, check our free Webmaster Tips Newsletter archive. It contains many tips related to browser bugs that can save you valuable time.

What You Can Do

We wish it were easy to cure browser display problems, but fixing them takes time. Read the following steps to learn what you can do to make it easier.



Set a Goal

First, understand that it's hard to build a Web page that displays perfectly on every version of every browser running on every computer. And doing so may require you to leave out features that you really, really want to have on your Web page. Building a Web page that's compatible with Version 1.0 of every browser would mean building a bland page filled with plain text.

So the first step to solving browser compatibility problems is to determine which browsers really matter to you.



To some extent we've done this for you in Browser Photo, since we don't include very old browsers such as Internet Explorer Version 3, or Netscape Version 2. While a handful of people still use these browsers, there aren't enough to justify the pain required to design pages for them.



But what about WebTV and Opera? We've included these browsers because they have small, but fiercely loyal followings. To quote one WebTV user, "We may be small in numbers, but build a site that's WebTV friendly and word gets around."



Within our own site, we track the pages typically viewed by WebTV users, and optimize those pages to work for that browser. Other pages aren't optimized for WebTV.



You may decide to do the same for your site, or you may decide that not enough people use these browsers to justify supporting them. In either case, define a goal and design toward it.



Avoid the Cutting Edge

The Web is hip; it's hot and exciting; it's radical. So many Web designers feel they have to build cutting-edge features into their Web page. That's a bad idea, because cutting-edge features are rife with browser compatibility problems, not to mention the impact they have on your page load time.



Web designers typically go through three stages of maturity: (1) I'm just learning; (2) I know it all, and I'm going to prove it by filling my site with cutting-edge features; (3) I've been burned by browser display problems, and only use what's compatible.



Not convinced? Try this exercise. Take some of the most well-known sites on the Internet: Yahoo, eBay, Amazon.com. Now go to those sites and look at their HTML code.



You won't see many cutting-edge features here. You won't see them using Java or Dynamic HTML. You won't see Flash.



You will see Javascript and Cascading Style Sheets. And most of all you'll see well-designed pages that work under all major browsers.



Including cutting-edge features in your site doesn't guarantee compatibility problems, but it greatly increases the chance of browser display errors. If you really feel you need to include these features, it's essential to test your pages under all major browsers. Check every page carefully with Browser Photo.



Pay Attention to Your Browser Compatibility Report

HTML errors are the leading cause of browser display problems. Making sure your Web pages are error free is one of the most important steps you can take to solve browser display problems.



That means running an HTML validator, like HTML Toolbox, over every page in your site.



The free sample of our HTML Toolbox will give you a full report of all the HTML errors on your Web page. The subscription version of this service can also automatically repair most HTML errors it finds on your page.



HTML Toolbox isn't a silver bullet; we don't claim that it will solve all of your browser display problems. But using it can dramatically reduce the time your spend tracking down browser display problems.



Validate Your Pages

Next to HTML errors, compatibility problems are the leading cause of browser display errors. We've already warned you about including cutting-edge features in your site, but compatibility dangers extend to all aspects of HTML.



HTML Toolbox includes a Browser Compatibility report that will identify HTML tags and attributes that aren't compatible with the three most recent versions of Netscape Navigator and Internet Explorer. Check this report and avoid HTML tags that aren't compatible.



Trial-and-Error Debugging

While HTML Toolbox can solve many browser display problems, there are some problems it can't address. That's especially true if these problems are caused by browser quirks and bugs. In these cases you'll have to track down your HTML problem yourself. Be patient; you can expect this process to take anywhere from one to four hours. Try following these steps to track down the cause:



1. Make a copy of your Web page so you can restore it to its original form if you need to. Debug this page, not your original Web page.

2. Isolate the problem on your copied page. Do this by eliminating as much of the page as you can. Is the problem at the top of your page? Then throw away everything but the top section of the page.

3. View the pared-down page in the problem browser (use Browser Photo to do this if you need to). Is the problem still there? Then remove more of the page. Eventually you'll get to a point where the problem disappears. In that case, the last part of the page you deleted probably caused the problem.

4. Now go back to your original page (or create a fresh copy of it and work with that). Look at the section of HTML that may have caused your problem. Change it.

5. Now start a new Browser Photo session for your page. View the results and see if you've corrected your display problem. If so, congratulations!

6. After you've fixed the problem, be sure to review your Browser Photo snapshots for other browsers too. It's a common mistake for HTML coders to fix a problem under one browser, and in the process break the page under another browser.

7. Don't expect your first guess to solve the problem. More often you'll have to try a number of different things to see if they solve the problem. Again, be patient with yourself; this takes time.

Why do you care about Browser Compatibility?

Web sites reflect the company's professional image. If your site renders improperly or not at all, your company's reputation can be tarnished. If your site has browser display problems, visitors and potential customers will leave your site and not look back.

In contrast, a professional looking site will make visitors feel more comfortable, stay longer and browse more pages. And because of this increased credibility, they are more likely to purchase the products and services that they are looking for from you.



A simple purchase of HTML Toolbox and Browser Photo can protect your site from preventable errors, maintain your professional image, and increase your bottom line.