Stripe a rendu disponible les sources de Abba, leur framework JavaScript de test A/B. Le fragment de code suivant permet de mettre en place un test A/B afin de proposer deux variantes d'une même page Web :
<script>
Abba('test name')
.control('Test A', function(){ /* ... */ })
.variant('Test B', function(){ /* ... */ })
.start();
</script>
Ce script définit un test de contrôle appelé Test A, généralement la page originale, et une variante Test B, censée être une amélioration. Pour chaque test, un handler est spécifié et appelé au choix par le framework. Dans le cas d'un test de contrôle unique, le handler n'est pas obligatoire.
Lorsque le test démarre, Abba appelle aléatoirement les handlers associés aux différents tests. Des pages différentes sont ainsi servies aux utilisateurs. Le framework suit chacun des utilisateurs pour enregistrer le point de départ et le statut final de son test. Abba peut être réglé pour qu'un internaute voit la même page lorsqu'il visite à nouveau le site Web.
Les données sont enregistrées dans une base MongoDB, et le graphe des taux de transformations (les visiteurs qui vont au bout du test) peut être visualisé sur une période de temps choisie pour chaque variante. Les valeurs des différentes variantes sont pondérées et une note normalisée est calculée pour évaluer la précision du test. Les résultats peuvent être filtrés par date et/ou par navigateur.
Abba s'exécute en local ou sur un serveur, des instructions sont fournies pour le déployer sur la plate-forme Heroku. Ruby 1.9.3 et MongoDB sont nécessaires au framework.