这是一个简单的sinatra应用程序,它在浏览器中显示黄瓜运行的结果:
require 'sinatra'
get '/' do
`cucumber features --format html`
end
get '/ls' do
`ls`
end
根路由工作正常,并在我的本地机器上执行我想要的操作:它执行黄瓜并显示结果。问题是我的服务器上出现错误No such file or directory - cucumber features --format html
。
我已经完成的故障排除
ls
路线。它既可以在本地也可以在服务器上运行,并在两种情况下显示我期望的目录结果 - 与sinatra应用程序运行的目录相同。cucumber features --format html
。再次,它工作正常,输出是我所期望的。那么为什么我在使用ruby的反引号通过sinatra运行时会出现错误?
谢谢!
答案 0 :(得分:1)
您确定服务器上安装了黄瓜吗?如果是,并且它是通过bundler安装的,请尝试将命令更改为:
bundle exec cucumber ...
修改强>
原来黄瓜不在路上。解决方案是使用黄瓜的完整路径。