Comments (6)
jleider had a fork of slickspeed (https://github.com/jleider/slickspeed) which runs each selector 20 times and reports the aggregate time. I have used this version on my own personal website to test Engine, and I have to say it is much more useful.
Having said that, it is not as flexible as I would like, and I think it could still use some changes. For example, I would like the user to be able to dynamically add/remove selectors from the test, toggle querySelectorAll, etc. Even better I would like to see a cross between jsperf.com and slickspeed.
pyrsmk, if you wanted to fork your own slickspeed, that would be great and I would support you where I can.
from engine.
I had test his fork this morning but it totally fails with me. Don't know why...
For the functionnalities that interest you, why dynamically add/remove selectors or toggle some js engine functions? Is it to provide better benchmarking?
I don't know jsperf.com, have you a screenshot of the test results?
In fact, with my slickspeed tests I've noticed that Slick needs 2 arguments for the functions and not only one... Moreover, I think we must to include context search support to the benchmark for a more realistic speed test.
Anyway, for all of this, a fork will be weak and painful to develop with... We could create a new repo for that... Do you know other js tools which we could inspired from?
from engine.
You can check out any of the tests people have made on jsperf (http://www.jsperf.com/browse). Here is one I made for engine (http://jsperf.com/engine-vs-sizzle-jquery). It's a pretty handy tool which utilizes the benchmarkjs framework (http://benchmarkjs.com/). The only problem with benchmarkjs is it tests speed but not the accuracy of the results. It would take a little bit of work but I'm sure benchmarkjs can be combined with slickspeed.
I am not sure why you can't get jleider's slickspeed fork working, it works for me.
Being able to toggle document.querySelectorAll would allow us to check the performance of a selector engine's internals. Dynamically adding/removing selectors to the test would be a handy feature for those who want to test a specific selector.
from engine.
I like these tests, it's exactly what I would as speed results within Slickspeed. As you said, combined with Slickspeed accuracy, it will be "perfect".
Ah, "toggle" in this way... Sorry but I'm french, so my english level is not good enough yet ^^ Then, I'm agree with you, querySelectorAll must be included in the benchmark. Moreover, it is very easy to implement.
In Slickspeed you can already modify selectors to test within the selectors list file :)
from engine.
Yes there is the selectors.list file, but what I mean by dynamically adding selectors is allowing the user (not necessarily the developer) to enter selectors to add in to the test after the page loads. For example, if the selectors.list file had the selectors "body", "div", and "div p", the user could add "div ~ p". Or if they do not care about "body, "div" and "div p" they could remove those selectors from the test. All of this manipulation would happen with javascript and are not changes in the selectors.list file.
Hope that makes sense.
from engine.
It makes sense :)
And we can also add the hability to the user to include his own HTML file otherwise he should known how the basic file is structured, by this way he may choice the perfect engine for his website.
from engine.
Related Issues (5)
- Context support HOT 8
- engineWithCache returns duplicates HOT 1
- Object expected with IE<=7 HOT 11
- :empty broken in IE < 9 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 engine.