【发布时间】:2017-04-20 09:00:09
【问题描述】:
Webstorm 有很好的测试运行支持,我可以通过告诉它“运行文件 testStart.js”来启动我的测试套件。然后我可以定义testStart.js 来设置我的测试环境(例如,创建一个Sinon 沙箱)并自己引入所有测试。
当我运行整个套件时,效果很好。但是 Webstorm 有一个功能可以让你重新运行一个失败的测试,当我尝试使用这个功能时,我遇到了一个问题:我的测试设置代码没有运行,因为单个测试文件没有调用设置代码。
所以,我正在寻找解决方案。到目前为止,我看到的唯一选择是:
我可以将设置代码移动到
testSetup.js文件中,而不是单独的testStart.js文件,并让每个测试都需要它。 缺点:我必须记住在每个测试文件中导入设置文件(而不是在我当前的方案中导入它)使用 Mocha 的
--require选项运行testSetup.js。 缺点:以这种方式需要的代码无法访问摩卡代码,所以我不确定如何调用beforeEach/afterEach使用我不知道的其他一些 Mocha 或 Webstorm 选项来运行测试设置代码。 缺点:不确定是否存在这样的选项
如果其他人遇到过这个问题,我很想知道是否可以使上述任何解决方案起作用(或者是否有其他我没有考虑过的解决方案)。
【问题讨论】: