【问题标题】:Run Nunit precompiled test运行 Nunit 预编译测试
【发布时间】:2015-02-21 11:30:59
【问题描述】:

我有一个包含 Nunit 测试的项目。

我有一个实现了所有接口但没有代码的代码项目。所有函数都抛出异常。

我的目标是给别人代码的实现。当所有测试都变成绿色时,他的工作就完成了。

我想要的是给他测试用例(nunit)以便能够运行它们。ì,而不是测试的内部代码。

我有两个想法:

  • 密码锁定 nunit 项目。
  • 预编译 nunit 项目

我无法弄清楚如何实现两者中的任何一个。

有人对如何实现我的目标有建议吗?

谢谢

【问题讨论】:

  • 您可以使用已发布的界面来做到这一点。一般来说,在敏捷世界中,测试人员应该与开发人员并肩工作(当然,开发人员也很有可能也是测试人员),以促进团队合作;沟通和理解。即使在不同的测试部门内,您的方法也可能导致unnecessary barriers?你怎么看?祝你和你的团队一切顺利。 (加上除非你混淆,你的同事可以将它加载到 Reflector)
  • 好点,但我的情况有点不同(我忘了告诉这个)。我提交的这个案例不是为同事设置的。我实际上是一名老师,这个设置是为我的学生准备的。这就是为什么我不希望他们看到测试代码。他们可能会在测试中的所有案例中写很多“if”和“return”
  • 谢谢。我在下面更新了我的答案

标签: c# nunit


【解决方案1】:

也许一种简单的方法是将单元测试放在 持续集成 (CI) 服务器(例如 Jenkins;TeamCity)上,并且只放在在代码签入期间运行对他的代码进行单元测试。如果您愿意,可以将 nUnit 测试的源代码放在 SCM 的其他位置,或者如果您暗示有安全要求,则拒绝访问它。那也许合适?

当所有的测试都变成绿色时,他的工作就完成了

这可以通过打开您选择的 CI 工具并检查仪表板的“绿灯”来执行。

这样开发人员就不会真正看到测试、代码或其他内容。他们可以只专注于开发他们的代码。这对于那些拥有不同开发人员和测试人员的团队来说可能是有益的。

无需密码锁定或预编译库,因为开发人员从不使用它,只有您可以通过合适的方式部署到的 CI 服务器。

希望这是合适的。

编辑:得知这实际上是一个教室设置,设置一个CI服务器可能有点过头了。也许只需将 nUnit 测试编译成 .dll 并分发给您的学生以使用 nUnit GUI 运行?

【讨论】:

  • 这在这种情况下可能已经太晚了,但可以在大约一个小时内安装 Jenkins(它包括一个嵌入式 Web 服务器,因此 Windows 安装是一个相当简单的一体化软件包) .编写 Jenkins 作业来做你想做的事需要一些学习,但在教育背景下,这项作业可以作为有用的技能发展传给高年级学生。
  • Jenkins 还有多种发布测试结果的方法,这样学生就不需要看到 Jenkins:他们将源代码提交到源代码库或预定义的共享文件夹,几分钟后就会通过电子邮件发送结果。这需要一些设置(可能需要一两天),但可以重新用作标准的作业完成机制。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-04
  • 2018-08-30
  • 2011-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多