zoukankan      html  css  js  c++  java
  • Rails 5 Test Prescriptions 第10章 Unit_Testing JavaScript(新工具,learn曲线太陡峭,pass)

    对Js的单元测试是一个大的题目。作者认为Ruby的相关测试工具比Js的测试工具更灵活

    大多数Js代码最终是关于响应用户的行为和改变DOM中的元素 

    没有什么javascript的知识点。前两节用了几个新的测试工具,和大量配置,暂时pass.

    •  setup js Unit-tests
    • writing a Sample test
    • Tdd in Js
    • jasmine matchers
    • testing ajax calls
    • using testdouble.js
    • connecting the js to the server code

    Setting Up JavaScript Unit Tests

    Webpack的配置很复杂,虽然rails团队已经做了改进,有时仍需要挖掘细节。 

    本章使用:

    Karma test runner: 从命令行运行,执行测试,和微博趴窗口良好兼容

    Jasmine: 一个测试的工具,作者喜欢它的syntax。

    TestDouble package:

    命令:加载相关的模块: 

    yarn add jasmine jasmine-core karma karma-chrome-launcher karma-jasmine karma-mocha-reporter karma-sourcemap-loader karma-webpack testdouble testdouble-jasmine --dev

    解释:

    使用Yarn package manager来管理独立的JS。使用Yarn来加载这些modules。 

    --dev命令增加这些模块到package.json中的独立的section 。(就是说这些模块只在development环境下使用,都是用于测试的) 标签是"devDependencies"

      "devDependencies": {
        "jasmine": "^3.1.0", 写代码的库
        "jasmine-core": "^3.1.0", 写代码的库
        "karma": "^2.0.2", command-line program 
        "karma-chrome-launcher": "^2.2.0", 让karma在Chrome中运行测试
        "karma-jasmine": "^1.1.2", 接口
        "karma-mocha-reporter": "^2.2.5",
        "karma-sourcemap-loader": "^0.3.7",
        "karma-webpack": "^3.0.0", 让karma使用webpack
        "testdouble": "^3.8.1", mock object package
        "testdouble-jasmine": "^0.2.1", 两者的集成。
        "webpack-dev-server": "2.11.2"
      }

    再运行:

    $ yarn global add karma-cli

    所以模块已经加载了。

  • 相关阅读:
    linux通过内容找文件的位置
    Mac通过端口查进程号
    执行brew update后显示Permission denied
    Linux通过进程ID查看文件路径
    Linux通过端口查进程号
    linux 如何查找命令的路径
    lua中冒号(:)与点号(.)的区别
    HTTP返回码301与302的区别
    vue使用animate.css类库实现动画
    vue过渡动画
  • 原文地址:https://www.cnblogs.com/chentianwei/p/9120776.html
Copyright © 2011-2022 走看看