Affichage des articles dont le libellé est browser. Afficher tous les articles
Affichage des articles dont le libellé est browser. Afficher tous les articles

jeudi 26 janvier 2012

Etes vous pret pour le futur du web : #SPDY ou #websocket ?

Les concepteurs du web étaient loin d'imaginer qu'un simple système de partage de document allait devenir le support des applications métiers.

Le protocole HTTP sur TCP est arrivé en bout de course, il fallait trouver quelque de plus rapide.
Il existe deux techniques : les websockets et le protocole SPDY mis en avant par google.





Le protocole SPDY propose de multiplexer les requetes sur la même connexion TCP, de compresser les entetes , le tout sur le protocole sécurisé SSL.
Autre point important : l'initiative des  requetes est bi-directionnelle: Le serveur peut avertir le client qu'il va lui envoyer des informations sur un canal.

Le site suivant : https://spdy-twitlog.indutny.com/  permet de tester la compatibilité de votre navigateur à ces nouvelles technologies. Il est écrit en javaScript et tourne sur Node.js.


Avec un navigateur compatible :


Avec un navigateur non compatible:


jeudi 8 juillet 2010

Le choix difficile d'un navigateur d'entreprise #IBM #firefox

IBM vient de faire une petite vague sur le Net révélant que Firefox serait le navigateur officiel installé par défaut sur les postes de travail de la firme.

La date de la sortie de cette information n'est pas un hasard. En effet, les entreprises sont face à un véritable dilemme : quel navigateur choisir pour leurs postes de travail ? . Des enjeux stratégiques forts se cachent derrière cette question. En effet le choix du navigateur IE de Microsoft était la réponse la plus raisonnable et confortable: c'est le navigateur le plus répandu du marché même si ce n'est pas le meilleur. Hélas, les versions de IE et de l'OS windows viennent troubler ce compromis.

L'échec de Vista et son remplacement anticipé par Windows Seven (7) ont perturbé la ligne de produit des navigateurs.
La version 8 de Internet Explorer (IE8) devait a la fois gommer les gros défauts de l'ancêtre IE6 et fonctionner sur toutes les versions OS de windows dont l'inusable windows XP. La duré de vie de IE8 devait être longue. Or Microsoft accélère les sorties des versions de test de IE9. Ce dernier n'est pas une simple nouvelle version de IE8 car il embarque un tout nouveau moteur de rendu. Toute son architecture a été repensé. Les progrès sont considérables si on en croit les résultats du test acid3 : ce test permet de mesurer la la compatibilité d'un navigateur vis à vis des standards du web.

Test acid3 pour mon IE6:




Test acid3 pour IE8:



Le test acid3 pour les versions Beta de IE9:



A l'heure où le javascript avec jquery et HTML5 sont en passe de proposer enfin des solutions robustes et standardisées, il est dangereux de lié la version d'un navigateur avec la version de l'os.





Les solutions alternatives pour découpler le navigateur et l'OS existent et sont efficaces:

Firefox :




Et google chrome




IBM utilise le plugin : CCK wizard pour fabriquer une version personnalisée du navigateur d'entreprise.

Cette extension permet (entre autres choses)
  • Verrouiller les plugins disponibles
  • Fixe la barre de titre et les icones
  • Ajoute les signets de l'entreprise
  • Désactive la configuration en ligne (about:config)
Cet outil est un véritable outil de déploiement et de gouvernance de son composant web le plus important : la partie cliente.

mercredi 28 avril 2010

watir : un outil de test d'application web

Le projet watir permet comme selenium d'enregistrer puis de rejouer des tests avec différents navigateurs.

Il faut pour cela:
* Enregistrer les actions de navigation avec un plugin firefox
* Lancer le programe watir généré par le plugin .

Watir est en ruby, un exemple de programme :

#!/usr/bin/ruby
require 'rubygems'
require 'watir'
Watir::Browser.default = "firefox"
browser = Watir::Browser.start "http://footpedia.org/newsite/"
browser.link(:text, "Messi nouveau Diego ?").click
browser.close


Il est possible de jouer des tests pour d'autres navigateurs (IE)

Watir interagit directement avec le navigateur. On voit littéralement le test se dérouler.

Pour piloter firefox a votre place, watir à besoin du plugin jssh.
Le lancement de firefox se fera par la commande firefox -jssh &.




Un autre usage possible de watir est de simuler de la présence sur une application et donc de contourner ... je vous laisse à votre imagination le soin de compléter la suite.

samedi 23 janvier 2010

Le casse-tête de la compatibilité de navigateurs

Lorsqu'on développe une application WEB, on se trouve tot ou tard confronté au problème de la compatibilité du navigateur du poste client. Situation qui s'aggrave avec le l'essor des smartphones. D'autres facteurs sont à prendre en compte comme l'arrivée de la norme HTML5, la progression inéluctable de l'utilisation du javascript et d'Ajax. La place du développement javascript va devenir prédominante dans les prochaines années, dopée par la puissance du moteur javascript. 2009 a été l'année ou la puissance d'une application javascript a dépassé celle d'une application WEB classique.
Il est difficile d'avoir des pages qui se comportent de la même manière dans tous les navigateurs. Je ne parle pas de l'incompatibilité des versions IE entres elles (IE6 restera le plus mauvais navigateur de tous les temps, Firefox peut lui dire merci).

Le blog http://webdesignledger.com/ dresse la liste d'outil pour tester un site web avec différents OS/Navigateur. L'article est ici (suivre ce lien).

J'ai testé http://browsershots.org/ sur l'adresse http://germanlinux.blogspot.com
Il est possible de choisir les associations OS-Navigateur-Version.
Voici les copies d'écran:
(clic pour élargir)

Les résultats s'affichent au fur et à mesure
(clic pour élargir)


Le traitement peut durer plus d'une heure en fonction du nombre de combinaisons.
Par contre, le test d'un site INTRANET reste impossible avec cet outil.
Mes conseils pour avoir une compatibilité maximum :
  • Remettre les marges à zéro par le biais des feuilles de style.
  • Utiliser des librairies javascripts reconnues et non pas des montages personnels.
La détection rapide au plus près de la phase de développement est préférable. Un coefficient multiplicateur par 10 s'applique pour chaque phase suivante.