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!

     

  • 相关阅读:
    June. 26th 2018, Week 26th. Tuesday
    June. 25th 2018, Week 26th. Monday
    June. 24th 2018, Week 26th. Sunday
    June. 23rd 2018, Week 25th. Saturday
    June. 22 2018, Week 25th. Friday
    June. 21 2018, Week 25th. Thursday
    June. 20 2018, Week 25th. Wednesday
    【2018.10.11 C与C++基础】C Preprocessor的功能及缺陷(草稿)
    June.19 2018, Week 25th Tuesday
    June 18. 2018, Week 25th. Monday
  • 原文地址:https://www.cnblogs.com/justany/p/3002859.html
Copyright © 2011-2022 走看看