I’ve been waiting for quite a while to try out zombie.js. It seems like the
“End All.” of hard-to-test-super-complex-setup systems, for instance, a system
where you have a SSO with several redirects, then multi-panel single page app
with a lot of ajax requests and dynamic resources. Unit tests are one thing, but
I really wanted to test that the whole setup was going to perform as expected.
After a day and a half (and part of an evening), I think that zombie.js is
probably trying to be a little too magical. On my Vagrant box (Ubuntu Precise
server) I’m running Node v0.8.6. At first I tried the setup with Mocha as
prescribed in the docs, but to no avail. The biggest problem: our SSO
system does a couple redirects when you hit the application page, and just like
another user expressed in this discussion, my
.then() callback fires way
too prematurely, and never hits the actual redirect. Specifying the wait time
didn’t help any either.
I’m not one to give up, I rarely let a hard problem get by me, but this isn’t
just a ‘tricky’ API I think. I think it’s an immature project. Harsh, I know,
but have a look at this example:
var zombie = require('zombie')
According to the documentation,
Loads this HTML, processes events and calls the callback.
But it actually gives:
TypeError: Object #<Browser> has no method 'load'
Am I just doing something plain wrong?
Zombies 1, Aaron 0
As a side note, selenium is looking to do exactly what I want.