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!

     

  • 相关阅读:
    1、线性DP 213. 打家劫舍 II
    如何在CentOS 8上安装Vtiger CRM?
    如何在不使用密码的情况下切换(su)到另一个用户帐户
    如何解决Ubuntu上的Busybox Initramfs错误
    Linux中的16个Echo命令示例
    如何在Ubuntu 20.04 LTS Focal Fossa上安装Grafana
    如何在Ubuntu 20.04上安装Apache ZooKeeper
    如何在Ubuntu 20.04 LTS Focal Fossa上安装Prometheus
    如何在CentOS 8上安装GlassFish
    如何在CentOS 8上安装Netdata Monitoring
  • 原文地址:https://www.cnblogs.com/justany/p/3002859.html
Copyright © 2011-2022 走看看