ME = THIS
Marc Dix
Webdeveloper
mediaman(.de)*
@marcdix
github.com/mdix
gplus.to/mdix
* we hire: http://careers.stackoverflow.com/de/company/mediaman
DALEKJS
Automatisiertes Frontend-Testing
mit Javascript
YAFTT?
NOPE!
$ npm install dalek-cli -g
$ npm install dalekjs --save-dev
"[...] here we are now, introducing a new testing tool for your Webpages, one that hopefully makes you love testing, one that holds your hand instead of pushing you away, one that makes you wanna contribute to it..."
Sebastian Golasch (@asciidisco)
BROWSERS
ACTIONS
query toFrame
screenshot wait log
reload forward back
click submit open type
sendKeys answer execute
accept dismiss resize maximize
setCookie waitFor waitForElement
...
ASSERTiONS
selected notSelected
enabled disabled
exists doesntExist
visible notVisible
text doesntHaveText
dialogText dialogDoesntHaveText
title doesntHaveTitle
url doesntHaveUrl
width height attr val css
A BASIC TEST
module.exports = {
'Edit mode can be en- & disabled': function(test) {
test
.open('http://mypage.local')
.assert.css('.edit-info', 'display', 'none', 'Edit mode is init. disabled')
.click('.edit-switch')
.assert.css('.edit-info', 'display', 'block', 'Edit mode is enabled')
.click('.edit-switch')
.assert.css('.edit-info', 'display', 'none', 'Edit mode is disabled')
}
}
DEMO
DOWNSIDES
"DalekJS is currently a developer preview. Some features are missing, some things might change, there's a lot of optimisation to be done.
Don't use this for production!" – Sebastian Golasch (@asciidisco)
- broken FF webdriver
- missing actions
- unstructured API
- One(Two)-Man-Show
- uses browser selector engine
ADVANTAGES
- it's Javascript*
- completely free & open source
- made with love
- you can have a strong influence on the design of dalekjs
* if you're short on time your wife, your kids and even your grandma might write your tests!
CONTRIBUTE
SHAPE THE DALEK API
https://github.com/rodneyrehm/dalek-api
FORK ON GITHUB
https://github.com/dalekjs/dalek
REPORT ISSUES
https://github.com/dalekjs/dalek/issues
DISCUSS ON IRC
irc.freenode.org - #dalekjs
CHECK BACKLOG ON WAFFLE.IO
https://waffle.io/dalekjs/dalek
.end('KTHXBYE')
DALEK.JS
By Marc Dix
DALEK.JS
Introduction to DALEKJS.
- 10,347