Browsern + Javascript = sant

Preview:

DESCRIPTION

Björn Skoglund, Valtech. Kärleken övervinner allt. En tydlig trend idag är att isolera sin javascript och testa funktionalitet isolerat från browsern via abstraktioner. Men förr eller senare måste vi alla erkänna att de hör ihop så jag kommer presentera ett experimentellt och annorlunda sätt att garantera funktionalitet i övergången mellan html och javascript.

Citation preview

Björn Skoglund@bjosk

http://github.com/bjorns

Mot internet!

Suitest DOH

LBRTW JSUnit

Enhance JS QUnit Unit.js RhUnit

Crosscheck J3Unit Mocha intern

JSNUnit YUI Test JSSpec

UnitTesting JSpec

Jasmine screw-unit Test.Simple Test.More TestCase

TestIt jsUnitTest

JSTest JSTest.NET

jsUnity RhinoUnit JasUnit FireUnit

Js-test-driver Js-test-runner

Sinon.js SOAtest

Vows Nodeunit

Tyrtle wru Compatible

Buster.JS Lighttest

Chai

”It does not require a DOM.”http://jasmine.github.io

JS HTML

Säker ? Osäker

TYDLIGT!

SÄKERT!

JS HTML

Säker Säker

gjut.js

• Node.js

• Finns i npm

• lib-modul eller terminal(gjutc)

• Experimentellt

gjut.js

• Tar annoterad html som input

• Validerar din html

gjut.js

<span>@package.variable</span>!

=>!

<span>hej världen!</span>

@mickec75

{ variable: ”hej världen!” }

<div @package.func()></div>=>

<div id=”dynamisktId”></div>

@mickec75

func: function(element) { element.attributes['id'].push('dynamisktId');}

<span @package.success()>Success!</span><span @!package.success()>Failure</span>

=><span>Success!</span>

@mickec75

<ul> <li @foreach(@func() in @array)> </li></ul>

@mickec75

array: [’Imse’, ’Vimse’, ’Spindel’],func: function(element, value) { element.content.push({ type: ’text', content: value + ’!’ });}

<ul> <li> Imse! </li> <li> Vimse! </li> <li> Spindel! </li></ul>

@mickec75

Verifiering

@verify .carousel -> .canvas!

@verify label <- input!

@verify exist div#topstory

Verifiering

Funkar det då?

http://openaid.skoglund.io

$ npm install gjut -g var gjut = require(’gjut’); !

$ gjutc index.html

https://github.com/bjorns/gjut.js

Björn Skoglund

Tack

@bjosk

http://github.com/bjorns