No es novedad que la mayoría de los programas de escritorio están pensados para un sistema operativo y una arquitectura en particular, teniendo que desarrollarse versiones paralelas para adaptarse a otras configuraciones. Un software cross-platform es aquel que puede funcionar sin problemas en esa amplia variedad de soportes. Esto suele constituir un arduo desafío.
Con frecuencia, se dice que las aplicaciones y los sitios web son naturalmente cross-platform debido a que, generalmente, pueden visualizarse desde todos los navegadores de uso común. Sin embargo, aquí el reto viene dado por la diversidad de dispositivos capaces de conectarse a Internet: computadoras de escritorio, computadoras portátiles, tablets, teléfonos, televisores y electrodomésticos aplican sus propias reglas a la visualización de contenidos online. Por otra parte, que un sitio web pueda verse en distintos navegadores no garantiza una plena accesibilidad: cada web browser interpreta el código fuente a su manera (más allá de los estándares), dando lugar a diferencias de visualización y funcionamiento; y hay lenguajes web que aún no son plenamente soportados.
De este problema surge una disciplina especialmente orientada al desarrollo web: el cross-browser testing. Se trata de evaluar un sitio o aplicación en distintas combinaciones de navegador, sistema operativo, resolución de pantalla y dispositivo. Como se observa, a pesar del nombre, el análisis incluye mucho más que diferencias entre navegadores (el examen limitado a esta variable se conoce como multi-browser testing).
El cross-browser testing no pretende que un sitio web se vea exactamente igual bajo todas las configuraciones posibles. De hecho, esto es prácticamente imposible. En realidad, busca que «funcione de manera equivalente bajo distintas condiciones», más allá de su apariencia o comportamiento externo. Es decir, apunta más al funcionamiento que a la visualización: un sitio web puede verse de manera similar en dos computadoras diferentes y solo funcionar adecuadamente en una. Por eso, si bien los desarrolladores deben procurar que no existan grandes diferencias visuales al acceder un sitio o aplicación web en distintas plataformas, lo fundamental es garantizar que en ambos casos el usuario pueda disfrutar plenamente de sus utilidades.