如何测试用户的代码?

How to test a user's code?

我的查询是非常基本的查询,只是想知道在酒吧后面发生的确切事情以及发生的方式。比方说,我有一个问题要编写代码。用户以任何语言提交代码(我想在这里专门使用 C 或 C++),现在代码在服务器端的各种测试文件上进行测试。这是怎么发生的?正如我所想和搜索的那样,服务器端必须有一个代码,它必须以文件的形式从客户端接受解决方案(用户代码),然后 运行 各种测试文件上的文件(将包含所有根据问题描述中指定的输入和输出测试用例)并匹配输出。是吗?我觉得还有别的地方或者我弄错了。

如果我有一个非常简单的程序来添加两个数字,现在我想测试用户的代码,我到底需要做什么?我是从实施的角度问的,即我想在我的机器上实际做和测试同样的事情。有人可以从基础上告诉我我应该做什么吗?(​​与在线评委的方式大致相同)

PS:我问这个不是为了举办什么比赛之类的,只是出于对学习的好奇。

我会把它分成两个子目标

  1. 学习自动化测试
  2. 设置一些允许用户提交测试用例的应用程序,运行 自动化测试和报告反馈

您可以通过使用您最喜欢的编程语言为某些程序设置自动化测试来开始获得更深入的洞察力。

使用搜索引擎,例如寻找 "automated c++ testing".

如果您已成功地在本地计算机上设置了一些自动化测试,那么您就可以朝着第二个目标前进。

例如,您可以设置一个 Jenkins 实例并了解如何向其添加自动化测试。