The Yahoo UI (YUI) Library is well known for its high quality code. One of its secrets is YUI Test, a testing framework for browser-based JavaScript solutions. QUnit is the unit testrunner for the jQuery project, another high quality library. If you are ready to unit test your own JavaScript code, which is the better choice : YUI Unit orQUnit?
2. Testing the Testers: YUI Test versus
QUnit
Yahoo UI (YUI) Library known for quality
code.
YUI Test framework
JQuery known for concise, quality code.
QUnit testrunner.
Ready to test your own
YUI Unit or QUnit?
3. Testing the Testers: YUI Test versus
QUnit
How to create unit tests for YUI Test and
QUnit
When to use YUI Test or QUnit
How to integrate unit testing into your
Javascript development cycle.
4. QUnit
Testrunner for the jQuery project.
Add functional/regression testing to plugins.
Efficient JQuery-like design paradigm.
5. QUnit - Key Features
Top-Level QUnit Project since May 2008
No stable release
Online download from Subversion
UI Focus
Plugin Testing
Regression Testing
Light-weight testrunner
Key Contributor - Jorn Zaefferer
21. QUnit - Strengths and Weaknesses
Strengths Weaknesses
Bundled with JQuery Proprietary syntax
Used by JQuery Lacks server support
Concise API Not well known
Browser friendly Sole contributor
22. QUnit - Bottom Line
Use when coding JQuery plugins and other applications
Good for UI tests
Essential for regression testing
Works well with test-driven development
For true acceptance tests, add Selenium to the mix
23. QUnit - Resources
Getting Started with JQuery QUnit
http://www.lostechies.com/blogs/chad_myers/archive/2008/08/28/getting-started-with-jquery-qunit-for-client-side-
javascript-testing/printerfriendly.aspx
Unit Testing Javascript using JQuery QUnit
http://highoncoding.com/Articles/570_Unit_Testing_JavaScript_Using_JQuery_QUnit.aspx
Running JQuery QUnit under Continuous Integration
http://www.lostechies.com/blogs/joshuaflanagan/archive/2008/09/18/running-jquery-qunit-tests-under-continuous-
integration.aspx?CommentPosted=true#commentmessage
Testing ASP.NET MVC QUnit
http://www.bradygaster.com/post/Testing-ASPNET-MVC-with-QUnit-Part-1.aspx
Some Qunit Tips
http://hammett.castleproject.org/?p=300http://hammett.castleproject.org/?p=300
Functional Testing Javascript with QUnit
http://www.eviltester.com/index.php/2008/06/17/functional-testing-javascript-with-qunit-initial-steps/http://www.
eviltester.com/index.php/2008/06/17/functional-testing-javascript-with-qunit-initial-steps/
24. YUI Test
Testing framework for browser-based
solutions.
Add unit testing to JavaScript solutions.
Derives characteristics from nUnit and jUnit.
25. YUI Test - Key Features
Create test cases through simple syntax.
Failure detection for methods that throw
errors.
Group related cases using test suites.
Asynchronous tests for testing events and
Ajax communication.
Cross-browser DOM Event simulation.
26. YUI Test - Key Features
Support for “A-Grade” Browsers
Release 2.5.2 (2008 May)
Since July 2007 (YUI 2.3.0)
License – BSD
~16 Team Members
Yahoo! employees and contributors
Maintained by Nicholas C. Zakas
http://www.nczonline.net/
27.
28.
29.
30.
31.
32.
33.
34. YUI Test - Strengths and Weaknesses
Strengths Weaknesses
Bundled with YUI Library Bundled with YUI Library
Large, well-funded team Lacks server support
Regular releases Community is stagnant
Well Documented Growth is stagnant
3rd party IDE support
35. YUI Test - Bottom Line
Good for simple event/form tests
Needs better automation tools
For true acceptance tests, add Selenium to the mix
Use when coding JavaScript or Ajax applications (and Test-
Driven Development)
36. YUI Test - Resources
Writing Effective JavaScript Unit Tests with YUI Test
Nicholas D. Zakas (2009 January)
http://yuiblog.com/blog/2009/01/05/effective-tests/
Test Driven Development with YUI Test
Nicholas D. Zakas (2008 September)
http://ajaxexperience.techtarget.com/assets/documents/Nicholas_Zakas_Test_Driven_Development.pdf
(presentation)
Writing Your First YUI Application
Eric Miraglia (2008 May)
http://www.insideria.com/2008/05/writing-your-first-yui-applica.html
37. Open QA Selenium
Selenium is a suite of tools
Selenium IDE
records and runs tests
Selenium Remote Control
runs across multiple platforms
Selenium Grid
runs across multiple machines
http://selenium.openqa.org/documentation/