debugging for multiple versions of IE

B

Ben Crowell

My development environment is Firefox on Linux. I have a javascript app
http://www.lightandmatter.com/calc/inf
that works on Firefox, and I can verify using browsershots.org that it
works on various browsers and operating systems. IE has me tearing my
hair out, however. I don't own a Windows machine, and the only ones I
have access to are at work, where I don't have privileges to install
software, so I can't install Microsoft Script Editor. Via browsershots
and testing at work, I'm finding that my code runs in some builds of
IE 6 but not others. It also seems to run in IE 8, but not in IE 7
(neither of which I have access to at work). This is an open-source
project that I'm doing for fun, so going out and buying three Windows
machines to run IE 6, 7, and 8 is not really on my agenda :) I do have
hands-on access to one machine running IE 6 on which I get an error
message complaining about syntax, but the message is annoyingly vague --
it tells me I've got an error on a certain line, but it doesn't tell
me which of my nine files the error is in <:-O

Can anyone suggest any sane way to deal with this?
 
D

David Mark

My development environment is Firefox on Linux. I have a javascript app
   http://www.lightandmatter.com/calc/inf
that works on Firefox, and I can verify using browsershots.org that it
works on various browsers and operating systems. IE has me tearing my
hair out, however. I don't own a Windows machine, and the only ones I
have access to are at work, where I don't have privileges to install
software, so I can't install Microsoft Script Editor.
Via browsershots
and testing at work, I'm finding that my code runs in some builds of
IE 6 but not others. It also seems to run in IE 8, but not in IE 7

Are you by any chance using jQuery?
(neither of which I have access to at work). This is an open-source
project that I'm doing for fun, so going out and buying three Windows
machines to run IE 6, 7, and 8 is not really on my agenda :) I do have
hands-on access to one machine running IE 6 on which I get an error
message complaining about syntax, but the message is annoyingly vague --

So buy a used Windows machine (they pay you to take them new these
days), install IE7, debug, install IE8, confirm you didn't foul that
one up. Then throw it away.
it tells me I've got an error on a certain line, but it doesn't tell
me which of my nine files the error is in <:-O

Can anyone suggest any sane way to deal with this?

Looks like you are having trouble juggling nine balls. So try eight.
 
B

Ben Crowell

David said:
Are you by any chance using jQuery?

No.

I think I figured out what the problem was. JSLint caught a mistake in
one of my files, and fixing that caused it to start working in IE.
 
T

Thomas 'PointedEars' Lahn

Ben said:
This is an open-source project that I'm doing for fun, so going out and
buying three Windows machines to run IE 6, 7, and 8 is not really on my
agenda :)

You might want to try IEs4Linux which uses WINE; both are available free of
charge, and free software (at least WINE is). I've never gotten Microsoft
Script Debugger to work there, though, and IE 7+ support is shaky at best
(my IE 7 still just doesn't want to navigate).

But you really wouldn't need to by one machine per each IE version to be
tested; you can make a partition for each, you can install a Virtual Machine
or, for the lazy of us, you can use standalone IEs; they should suffice for
testing simple, not DOM-related scripts. Also, IETester 0.3.2 allows you to
test IE 5.5 to 8 in one application.

I have recently posted the corresponding URIs, but Google is your friend
[psf 6.1], too.

And maybe said:
I do have hands-on access to one machine running IE 6 on which I get an
error message complaining about syntax, but the message is annoyingly
vague -- it tells me I've got an error on a certain line, but it doesn't
tell me which of my nine files the error is in <:-O

Yes, that's Micro$~1. Remember that old helicopter joke?
Can anyone suggest any sane way to deal with this?

HTH


PointedEars
 
T

Thomas Allen

I've found this to be the best option for testing different versions
of IE on Windows:

http://tredosoft.com/Multiple_IE

If you plan on doing cross-browser testing, it's worth picking up a
copy of XP to run parallel to your native OS (I run it alongside OSX).

Either way, if your job at all concerns cross-browser testing, I'm
sure that you can convince whoever necessary to let you install
Multiple IE.

Thomas
 
T

Thomas Allen

I'm not at all surprised that you would recommend that despite its author
announcing its end-of-life quite some time ago on the very same Web site
(scroll down).

I'm not sure why that makes it necessarily a poor choice (versions 6
and earlier are no longer maintained either). On the other hand, you
recommend IEs4Linux. When I was running Linux exclusively, I used
IEs4Linux for testing but found it to be of limited use: It seemed to
be based on an earlier release of IE6 and would produce bugs not found
in SP* versions of IE6, as well as missing bugs that emerged in these
later versions. I've found the Multiple IE distribution to be more
accurate.

Thomas
 
T

Thomas 'PointedEars' Lahn

Thomas said:
Thomas said:
I'm not at all surprised that you would recommend that despite its author
announcing its end-of-life quite some time ago on the very same Web site
(scroll down).

I'm not sure why that makes it necessarily a poor choice (versions 6
and earlier are no longer maintained either). [...]

Reading the corresponding articles would also have explained why it is not a
poor, but a questionable choice. But I guess that is too much to ask for.


Score adjusted

PointedEars
 
T

Thomas Allen

Which corresponding articles? If you're referring to the FAQ, I wasn't
able to locate anything relevant to this discussion in it, but maybe
you could point me to the right place, being more familiar.

Thomas
 
T

totalstranger

My development environment is Firefox on Linux. I have a javascript app
http://www.lightandmatter.com/calc/inf
that works on Firefox, and I can verify using browsershots.org that it
works on various browsers and operating systems. IE has me tearing my
hair out, however. I don't own a Windows machine, and the only ones I
have access to are at work, where I don't have privileges to install
software, so I can't install Microsoft Script Editor. Via browsershots
and testing at work, I'm finding that my code runs in some builds of
IE 6 but not others. It also seems to run in IE 8, but not in IE 7
(neither of which I have access to at work). This is an open-source
project that I'm doing for fun, so going out and buying three Windows
machines to run IE 6, 7, and 8 is not really on my agenda :) I do have
hands-on access to one machine running IE 6 on which I get an error
message complaining about syntax, but the message is annoyingly vague --
it tells me I've got an error on a certain line, but it doesn't tell
me which of my nine files the error is in <:-O

Can anyone suggest any sane way to deal with this?

This solution allows me to run IE8, IE7 and IE6 on one machine, YMMV. I
see you are running Linux, but perhaps this will help someone using
Windows, or you install a Windows image on your HD, or purchase a
Windows machine. You must be running XP or Vista, any flavor should work.

Here's how:

Install Microsoft's free Virtual Machine. When initially installed it
may complain that you are not running Vista Ultimate or XP Pro, however
keep going it will work, well it does here on Vista Home Premium.
http://www.microsoft.com/windows/downloads/default.aspx
Click Microsoft Virtual PC
Select VPC 2007 SP1 or Virtual PC 2007

Get the free VHD images for versions of IE that you don't have installed
on your native OS and install them into the Virtual Machine, then run
them in the virtual machine. The images are totally isolated from each
other and your native OS. Huge URL follows
http://www.microsoft.com/downloads/...90-958F-4B64-B5F1-73D0A413C8EF&displaylang=en
You can also find it by searching Google for "ms ie8 VHD image".
Download, expand and install each image you want. They do expire,
however updated versions are usually available for download. If you want
to use your wireless connection with a virtual machine: Highlight the
machine in the VM console, click Settings, click Networking, set adapter
1 to your wireless card, click OK

I currently have IE8 native, with XP/IE7 and XP/IE6 virtual machines.
I've found there is a good native debugger for Javascript in IE8 that
works. It also allows compatibility mode that allows you to run and see
your site in IE7 mode without firing up IE7, although you must go into
the Tools-->Compatability to get the site back into IE8 mode. I also
test my site with Firefox (my browser or choice), Opera, Safari and Chrome.
 
T

Thomas 'PointedEars' Lahn

Lasse said:
I particularly recommend the sub-section "Dealing with rudeness".

And I recommend to read and take heed of the sections "Introduction" and
"Before You Ask". That helps to reduce seemingly rude answers to a minimum.
/L 'However, being rude without being useful is not the same as being a hacker'

Of course not. A hacker would have responded differently if the enquirer
would have asked a smart question, that is, a question that shows that they
had done their homework according to *all* points in the list in "Before You
Ask".


HTH

PointedEars
 
E

Eric Bednarz

Lasse Reichstein Nielsen said:
I particularly recommend the sub-section "Dealing with rudeness".

When the time has come to worship a cheap gunslinging goon – we all have
been that age once – I’d rather recommend a western with Lee van
Cleef. :)
 
D

Dr J R Stockton

In comp.lang.javascript message <[email protected].
com>, Wed, 1 Apr 2009 17:39:26, Ben Crowell <crowell09@lightSPAMandISmat
terEVIL.com> posted:
I do have
hands-on access to one machine running IE 6 on which I get an error
message complaining about syntax, but the message is annoyingly vague -
-
it tells me I've got an error on a certain line, but it doesn't tell
me which of my nine files the error is in <:-O

Can anyone suggest any sane way to deal with this?

Note the line number.

Number the files 1 to 9, and to each of them add at the beginning a
number of blank, or effectively blank, lines equal to the number of the
file. Test again.

Subtract the old error line number from the new error line number, and
that is the number of your offending file.


Alternatively, for test purposes, replace the nine files with (in
effect) a concatenation of all nine. Now you know in which file the
error is. Run it, and you will be able to identify the line by its
number.
 
B

Ben Crowell

Dr said:
In comp.lang.javascript message <[email protected].
com>, Wed, 1 Apr 2009 17:39:26, Ben Crowell <crowell09@lightSPAMandISmat
terEVIL.com> posted:

Note the line number.

Number the files 1 to 9, and to each of them add at the beginning a
number of blank, or effectively blank, lines equal to the number of the
file. Test again.

Subtract the old error line number from the new error line number, and
that is the number of your offending file.

Hah! Great trick, thanks!
 
B

Ben Crowell

Thomas said:
You might want to try IEs4Linux which uses WINE; both are available free of
charge, and free software (at least WINE is). I've never gotten Microsoft
Script Debugger to work there, though, and IE 7+ support is shaky at best
(my IE 7 still just doesn't want to navigate).

But you really wouldn't need to by one machine per each IE version to be
tested; you can make a partition for each, you can install a Virtual Machine
or, for the lazy of us, you can use standalone IEs; they should suffice for
testing simple, not DOM-related scripts. Also, IETester 0.3.2 allows you to
test IE 5.5 to 8 in one application.

Hmm...thanks for the suggestion, but IEs4Linux requires a copy of IE,
which you can't get (legally) without buying a copy of Windows. I'm not
interested in putting money in Microsoft's pockets just so I can make
my code work in their browser. This is just a fun project. Same problem
with installing Windows on VMs: I'd have to buy Windows.
 
T

Thomas Allen

Hmm...thanks for the suggestion, but IEs4Linux requires a copy of IE,
which you can't get (legally) without buying a copy of Windows. I'm not
interested in putting money in Microsoft's pockets just so I can make
my code work in their browser. This is just a fun project. Same problem
with installing Windows on VMs: I'd have to buy Windows.

IEs4Linux does not require a copy of Internet Explorer. It downloads
an archive of the program from Microsoft and runs it on WINE.

Thomas

Thomas
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,582
Members
45,067
Latest member
HunterTere

Latest Threads

Top