我想在一些使用 PouchDB 库的 js 上编写单元测试。为了使用 PouchDB,我需要启动一个简单的 HTTP 服务器*。
我的文件结构是 /public(提供的所有 html 和 js)/specs(我所有的 js 和 ruby 规范文件)
如果我要在 /public 文件夹中启动服务器(如 rackup),我将无法访问 /specs 文件夹中的规范(因为 /public 文件夹将成为 Web 服务器的根目录)。
如果我在 /specs 文件夹中启动 rackup,我将无法访问 /public 文件夹中要测试的 js 文件(因为 /specs 文件夹将成为 Web 服务器的根目录)。
我想如果我重组它以便我的规格在我的公共文件夹中,这可能会起作用。但这看起来很笨重。我想我也可以在 specs 文件夹中复制我正在测试的 js 文件。同样,这看起来很笨拙。当然,有更好的方法来做到这一点。
*当我尝试在没有运行简单的 http 服务器的情况下执行以下简单代码时,出现错误:
var db = new PouchDB('todos');
db.put({_id : '001' });
我得到:
请求处于“已拒绝”状态,并带有“结果 = TypeError:无效的‘in’操作数 i”
使用“python -m SimpleHTTPServer”在 http 服务器上尝试相同的代码可以正常工作(请求将得到满足)。