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!

     

  • 相关阅读:
    Redis相关操作指令
    Redis下载及安装(windows版)
    SpringBoot——登录验证码实现
    c++各种输入函数
    福昕阅读器关闭pdf文件后导致其被占用的处理办法
    面试之HTTP协议相关的问题
    在浏览器中输入URL后,执行的全部过程。会用到哪些协议?(一次完整的HTTP请求过程)
    Cookie与Session的原理
    Socket编程
    安全相关的问题、CSRF攻击、怎么确保数据传输中的安全性?
  • 原文地址:https://www.cnblogs.com/justany/p/3002859.html
Copyright © 2011-2022 走看看