Comments (2)
Huddle also use CasperJS and PhantomCSS for testing an SPA. When testing asynchronous UI updates this CasperJS method is really handy.
http://docs.casperjs.org/en/latest/modules/casper.html#waitforselector
casper.waitForSelector('.tweet-row', function() {
phantomcss.screenshot('.tweet-row'');
});
If you don't care if the UI talks to the server or not, you could also use PhantomXHR to fake the ajax responses https://github.com/Huddle/PhantomXHR. This gives you more control over the UI and speeds up the tests. (Warning: if you use PhantomXHR you will have to setup fakes for ALL ajax calls)
For logging:
http://docs.casperjs.org/en/latest/events-filters.html#events-reference
casper.on("remote.alert", function(msg) {});
casper.on("remote.message", function(msg) {});
http://docs.casperjs.org/en/latest/modules/casper.html#evaluate is also useful for debugging.
from phantomcss.
Thanks, the logging events really helped. It turns out the problem was deep in our JavaScript event layer. We assumed all click events are preceded by a mousedown event, and ignore click events that aren't. However, when using CasperJS, as you might expect, it only fires the click event. I worked around this bit of nastiness, by writing a custom function that fires the mousedown event before the click event on a selector.
from phantomcss.
Related Issues (20)
- can phantomcss able to club the original image , diff image and failure image in one single image? HOT 4
- Screenshot fails on container of floated elements HOT 1
- When page has asynchronously content following error occures. HOT 1
- Unable to capture screenshot greater than screen height HOT 1
- Page is not loading properly some components are missing while taking the screenshots HOT 4
- Says test failed, but failure folder is not created. HOT 1
- xunit testcase name inconsistent and not inherited from casperjs HOT 4
- TypeError: undefined is not an object (evaluating 'fileData.data') HOT 2
- PhantomJS fails with TypeError HOT 1
- Add more usage examples HOT 1
- Running PhantonCSS test after javascipt run on the page. HOT 1
- screenshot passes on if selector is missing HOT 2
- PhantomCSS is moving the HTML elements around HOT 1
- duplicate baseline image HOT 1
- Is the phantomjs not working on an app that is using angular ui-view HOT 6
- [email protected] requires a peer of canvas@^1.6.5 but none was installed HOT 3
- Do I need python for this? HOT 1
- Bug scroll bottom on fail screenshot HOT 3
- Support for the https pages HOT 1
- Create screenshots without test number at the end HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from phantomcss.