2010-11-15 15 views
20

¿Es necesario probar la representación de mi sitio web en Chrome y Safari a pesar del hecho de que ambos navegadores implementan el motor de renderizado Webkit debajo?¿Debo seguir probando el renderizado tanto en Chrome como en Safari si ambos usan Webkit?

¿Es esto una copia de seguridad por parte de los desarrolladores o una suposición válida que hacer?

Estoy preguntando específicamente si las páginas de mi sitio web mostrarán lo mismo en ambos navegadores y si mi Javascript funcionará en ambos buscadores.

+1

Buena pregunta. También me interesa si la misma respuesta se aplica a las plataformas Windows/Mac/Linux. –

+2

¡sí! Los software son complejos y hay tantas partes en un navegador que probar es la única forma de estar seguro. –

Respuesta

14

Hay algunas pequeñas diferencias, por lo que probaría en ambas. Algunos ejemplos:

  • De forma predeterminada, Safari tiene las cookies de terceros deshabilitadas, pero Chrome las tiene habilitadas por defecto.
  • Safari no almacena el contenido <noscript> en el DOM, Chrome lo hace
  • Chrome mantiene cada ventana del navegador en un proceso de su propio sistema operativo (modelo multiproceso). Safari mantiene todas las ventanas en un solo proceso. [Nota: el próximo WebKit2 tendrá soporte para el modelo multiproceso integrado].
  • Chrome utiliza el motor de javascript V8, Safari usa Nitro.

Sé que hay algunas otras diferencias que he encontrado, pero no puedo recordarlas en mi cabeza. Actualizaré esta publicación si se me ocurre alguna.

+3

En la práctica, durante el desarrollo, solo cambiaré entre Chrome, Firefox e IE 7 (Dios me ayude) en una VM, asegurándome de que todo funciona; si lo tienes, los problemas en otros navegadores son raros. Solo volví atrás y revisé otros navegadores (Safari, IE 6, IE 8, a veces móviles) justo antes de implementar en producción. Pero yo * do * verifico. –

+1

Creo que probablemente tengan muchas otras diferencias fuera de los motores de renderizado/script: además de diferencias de política/análisis "simples" como usted menciona, ¿utiliza Safari el mismo modelo de multiproceso? ¿Implementan todas las mismas API accesibles mediante JavaScript (trabajadores, bases de datos, etc.)? – SamB

+1

@SamB, Buen punto sobre el modelo multiproceso de Chrome. Agregué eso a la respuesta. Y con respecto a javascript, creo que tiene razón; estoy seguro de que he encontrado algunas diferencias materiales en sus motores javaScript en el pasado, pero sinceramente no puedo recordar ahora cuáles son estas diferencias. –

9

utilizan diferentes motor de JavaScript, Chrome: V8, Safari: Nitro

5

Cada navegador puede optar por incluir diferentes características de webkit en sus versiones finales, por lo que no siempre son los mismos.

+1

No solo eso, pero creo que el kit web de Chrome a menudo tiene parches que aún no lo han hecho (aún). Y quién sabe si su "puerto" cambiará significativamente la representación, además del caso obvio de cualquier control GUI nativo, quiero decir :-). – SamB

3

Incluso las diferentes versiones de Chrome se comportarán de manera diferente, lo mismo para las diferentes versiones de Safari. Entonces no usaría esta suposición, y probaría en ambos buscadores.

+0

Buena suerte probando lo mismo en muchas versiones de cromo, aunque ;-) – SamB

+1

Ah, un ejemplo que he notado: parece que el comportamiento de Chrome para 'history.back()' en la lista de reproducción 'iframe' en http://rainwave.cc cuando solo hay una ubicación anterior para ese 'iframe' ha ido y venido entre navegar por la pestaña completa y simplemente navegar ese 'iframe' al menos un par de veces. (Y se suponía que el código en rainwave.cc se había congelado durante al menos la mayor parte del período en que vi que esto sucedía). – SamB

1

Interesante pregunta, estaba pensando en esto antes. Yo diría que sí, solo porque el motor de renderizado es solo una parte del navegador. También debe tener en cuenta que hay muchas versiones de cada navegador todavía en uso.

No hace falta demasiado tiempo para probar la página en éter, mejor que eso, perdón.

Cuestiones relacionadas