mocha测试会存在缓存现象吗?或是mac电脑存在隐藏文件?


今天在写测试用例:读一个生成文件的内容,读了一早上,硬是没有读出来,弄到晚上还是没读出来,从读的代码是否有bug,到拼写检查,到路径改动,都没有解决这个问题,在好几个论坛里抛出问题后也是没有人回答。

下面想问一个奇怪的问题:mac里存在隐形文件吗?

这是文件目录:
QQ20150430-4@2x.png

这是配置的路径:
var config = {
promiseData:'../data/promiseData.json',
asyncData:'../data/asyncData.json',
eventproxyData:'../data/eventproxyData.json'
}

我发现配置的模式相同,但是测试用例总能读到promiseData的数据,后两个读不到,无论同步读还是异步读,这很奇怪,后来我脑洞大开,给文件目录统统改名,甚至删除了data目录,我发现测试用例依然可以读取到promiseData数据!!!why?

后来我重新抓取数据,生成新的data目录和内部数据文件,发现测试用例读的是曾经某一时刻存入promiseData的数据,根据这个情况,我很想问大家,是不是mocha测试会存在缓存?或者是mac里有隐藏文件,测试用例一直访问过去的隐藏文件数据???

node.js mocha JavaScript should.js

碌碌更健康 9 years, 7 months ago

程序可以跑通,但是测试跑不通,原因在于路径。

对于require模块,路径是相对于模块自身

对于有fs的执行文件,其中的路径需要根据command具体命令来参考设置。

简单说就是在不同位置执行文件,会影响fs的文件路径。

大家要多注意哦~

推倒天江衣 answered 9 years, 7 months ago

Your Answer