我想编写一个可以像这样工作的Web应用程序。一个用户上载单元测试,另一个用户上载可测试的代码,服务器然后对代码运行测试,然后保存结果。我需要提示如何在服务器上的代码上运行测试,和/或是否有其他方法可以更好地进行测试?
我不会采用方法。它有很多问题需要解决:
1)确保用户提供的代码是安全的。例如。您不希望用户提供的代码来关闭服务器。
2)假设您已弄清楚如何确保提供的代码安全。现在,您必须弄清楚如何运行它。
3)您需要将测试报告存储在某个地方并以某种方式处理故障...如果测试失败,则可能要回滚服务器更改。
4)容易出错。由于用户仅提供纯字符串,因此他可以在类名,方法名,导入和其他100种东西中打错字。
这些是最明显的问题,我认为人们可以提出其他问题。
我只会遵循标准做法:
[1)一个人编写代码并进行单元测试(或者在成对编程的情况下一对编写)。
2)同一个人将其提交到VCS(现在必须使用VCS)
3)构建自动化工具应构建它并运行测试。 (如果您没有/不知道,则可以在本地构建项目)。
4)在执行了所有构建步骤(手动或自动)之后,您应该决定是否要部署代码。未经测试的代码根本不应该部署(有意见认为,损坏的代码甚至不应该提交到release分支)