• 请不要在回答技术问题时复制粘贴 AI 生成的内容
jiafaner
V2EX  ›  程序员

前端倒底怎么样才能够设置单元测试啊啊

  •  
  •   jiafaner · Sep 14, 2018 · 3171 views
    This topic created in 2811 days ago, the information mentioned may be changed or developed.

    花了很长时间,终于把 webpack 和 babel 都配置起来了,可交差后还是被打了回来,说需要搭配一个可以在 cli 下面执行的单元测试框架

    搜索了半天,尝试了 tape 等好几个,可没有一个能够正常跑起来,我搜索的姿势是不是不对?

    有没有对应的教程,可以简洁地搭建一个 npm+webpack+babel+test 的环境啊?

    9 replies    2018-09-15 11:14:49 +08:00
    Tonni
        1
    Tonni  
       Sep 14, 2018   ❤️ 1
    之前用过 Webdriver.IO ,这里还有之前的代码 - https://github.com/HouCoder/front-end-auto-testing

    说实话前端测试在绝大多数公司很难推进,迭代迅速,测试跟不上。
    maichael
        2
    maichael  
       Sep 14, 2018   ❤️ 1
    jest,mocha,包括 tape 也是能搭建起来的,你的具体问题是什么。你的项目有没用其他框架?
    jiafaner
        3
    jiafaner  
    OP
       Sep 14, 2018
    @maichael 感谢回复

    我现在的情况是这样的:

    Boss 让我搞一套 webpack+babel+es6+eslint 的框架,我弄起来了,可以正常打包,正常 livereload

    但现在 Boss 说我弄得不对,还缺一个单元测试工具

    我找了 jest/mocha/tape,都能够执行基本的测试,可是 Boss 让我把项目弄成测试可以用 ES6 来写,我就不知道怎么弄了

    我正在尝试 jest,可是怎么配置.babelrc 都不能够执行,mocha 已经放弃了,tape 有一个 babel-tape-runner,照着文档去安装以后,默认文档的安排就报错,在搜索的时候看到 Issue 里面发现别人也报了这个 Bug,说是版本问题,基本上也无解。
    maichael
        4
    maichael  
       Sep 14, 2018
    @jiafaner jest 的话你需要加一个 babel-jest 作为 transform。https://jestjs.io/docs/en/getting-started#using-babel
    jiafaner
        5
    jiafaner  
    OP
       Sep 14, 2018
    @maichael 感谢

    我现在用上了,现在用 npm run test 是可以执行的。

    我想再请教一下,

    npm(package.js)
    webpack
    jest

    这三者用什么样的搭配才是对的?

    现在我配置的项目,就是参考网上的资料拼起来的,所以 live-reload, babel 都是配置在 webpack 里面的

    现在新配置的 jest 不是用的 webpack,是用的 npm run test 就能运行了

    这样对还是不对呢, 还有没有必要配置到 webpack 里面去运行,我太外行了,见笑了
    maichael
        6
    maichael  
       Sep 14, 2018
    @jiafaner jest 和 webpack 分开是对的。
    jiafaner
        7
    jiafaner  
    OP
       Sep 14, 2018
    @maichael 那没问题了,太感谢了
    zoffy
        8
    zoffy  
       Sep 14, 2018
    前端真的不知道测什么,看到有 assert 某个 div 颜色的,到底有什么意义
    narcotics
        9
    narcotics  
       Sep 15, 2018 via Android
    @zoffy 你那是端到端的测试,某些场景下也不见得没有意义

    再说我不做前端也知道现在前端逻辑越来越重,单元测试很必要的好吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2678 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 48ms · UTC 15:34 · PVG 23:34 · LAX 08:34 · JFK 11:34
    ♥ Do have faith in what you're doing.