zoukankan      html  css  js  c++  java
  • Discover a powerful and suitable Javascript Automatic Testing Toolkit

     

    Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.

    For the best experience please use the latest Chrome, Safari or Firefox browser.

    Discover a powerful and suitable

    Javascript Automatic Testing Toolkit

    by Daniel Yang

    Purpose

    Find out the best Javascript testing library for us.

    QUnit vs Jasmine

    • support in brower & Node.js
    • testing of DOM manipulation
    • TDD or BDD

    BDD or TDD

    in Jasemine

    expect(5).toEqual(5);

    expect(5).not.toEqual(5);

    in Qunit

    strictEqual(5, 5);

    notStrictEqual(5, 5);

    But we need something more...

    • how to test in different browers
    • how to test with a AMD loader
    • and how to automatic testing

    JsTestDriver + Jasmine

    This is the Taobao's solutions in used, but it has some bugs which make people get fighting mad.

    Pro

    • testing in different browers
    • automatic testing
    • BDD style script

    Con

    • asynchronous support is not good, and you shall mock up the data when using AJAX.
    • couldn't support all Jasmine method
    • and it built in Java(not JS)

    Is there any libaray
    can solve these problems?

    My answer is Buster.js

    Easy to deploy

    use npm to install & manager

    npm install -g buster

    npm install buster-amd

    Browser Testing

    Buster.JS can automate browsers, JsTestDriver style.

    buster server

    Buster.JS also has a static browser runner that runs tests by opening a web page in a browser. This is similar to QUnit, Mocha, etc.

    buster static

    AJAX Testing

    using Sinon.JS to mock out the entire XHR stack in a browser, so we can test AJAX easily.

    Asynchronous tests

    To tag a test as async, have the test function take one argument, done.

    The done argument is a function. Call it to tell Buster.JS that the asynchronous test has finished running.

    Test reporters

    Buster.JS can create all human-consumable reports(by Terminal, JSON, XML and HTML).

    Buster Test Reporters Doc

    Buster.JS is still beta, so it has some rough edges.

    But I think this solutions will satisfy our needs.

    Thanks for your watching!

     

  • 相关阅读:
    python学习-(__new__方法和单例模式)
    jQuery弹性展开收缩菜单插件gooey.js
    轻量级Modal模态框插件cta.js
    基于jq流畅度非常好的图片左右切换焦点图
    基于jQuery实现的腾讯互动娱乐网站特效
    基于jQuery和CSS3炫酷图片3D旋转幻灯片特效
    可嵌入图片视频jQuery全屏滑块
    基于jQuery仿迅雷影音官网幻灯片特效
    基于jQuery自适应宽度跟高度可自定义焦点图
    基于jQuery实现汉字转换成拼音代码
  • 原文地址:https://www.cnblogs.com/justany/p/3002859.html
Copyright © 2011-2022 走看看