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!

     

  • 相关阅读:
    用户使用调查报告
    Beta总结
    Beta冲刺Day7
    Beta冲刺Day6
    Beta冲刺Day5
    Beta冲刺Day4
    Beta冲刺Day3
    Beta冲刺Day2
    Beta冲刺Day1
    Beta预备
  • 原文地址:https://www.cnblogs.com/justany/p/3002859.html
Copyright © 2011-2022 走看看