在沙箱中的服务器上运行JavaScript代码

时间:2015-03-13 23:11:23

标签: javascript ruby-on-rails heroku sandbox sandbox-solution

我希望学生将JavaScript代码提交给我们的服务器。然后我们测试JavaScript代码以确保学生解决问题。我想测试抛出的异常,输出,返回的内容,执行时间,调用的个别变量和函数。

我们在Heroku中运行Ruby on Rails,但是我很高兴建立一个node.js / io.js服务器来运行JavaScript代码并让我们的Ruby on Rails代码只需通过用户提交的代码发送,等待用户提交的代码成功或问题的响应,然后回复给用户。

对此最佳解决方案是什么?当然,我还需要暂停,以确保while (true)不会导致问题。

1 个答案:

答案 0 :(得分:0)

我认为一个有趣的解决方案是整合circleci。 Circleci会自动为您打包应用程序。您可以简单地override the test commands作为运行命令(例如node cs_123123123123.js),如果它在运行circleci时抛出异常将触发构建失败的webhook。

在检查调用堆栈等方面,无论您使用哪种解决方案,都会很棘手。虽然我无法就此提出具体建议,但您可以查看istanbul如何检查代码覆盖率,因为它可能非常相似。祝你好运!

编辑:另外,另一个很酷的解决方案是实际上只是为这些circleci构建设置测试用例以自动查看输出是否正确