3

我在Delphi Prism中创建了下面的简单测试用例。当我使用Gallio Icarus运行测试用例时,它返回一个This test is not supported by any available test framework

我只能想到可能发生这种情况的两个原因

  • 我错过了一些(真的)明显的东西。设置,某处缺少初始化,...
  • 不能将MbUnit - GallioDelphi Prism结合使用。

我确实希望这是因为我遗漏了一些明显的东西。如果不是,其他人使用Delphi Prism将什么用作测试框架?

namespace MailExtensionTests;

interface

uses
  MbUnit.Framework;

type
  Class1 = public class
  public
    [Test]
    procedure TestSomething;
  end;

implementation

procedure Class1.TestSomething;
begin
  Assert.IsTrue(True);
end;

end.
4

1 回答 1

2

我对 .Net 领域的东西并不精通,至少我学到了很多东西。

我现在知道我已经让位于关于我曾经能够回答这个问题的版本的信息很少。

 - Windows XP 5.1.2600.
 - VMWware 6.5.4 with 2Gb of memory.
 - Delphi Prism running in Visual studio 2010.
 - .Net Framework 4
 - Gallio 3.1
 - MbUnit 3.1

现在我已经能够真正解决您提出的问题,这是对我有用的两个解决方案。

第一个解决方案

我忽略的一件事是我正在编译的 .Net 框架。

我们的目标应该始终是追求最高、最快、最前沿的东西,对吧?因此,选择.Net Framework 4作为我的目标框架进行编译对我来说是一件很容易的事。我的意思是,最高的,最好的,最卑鄙的……这可能有什么问题。

对于初学者来说,Gallio 3.1 版不支持.Net Framework 4。我只需要看一下MbUnit 的主页就可以弄清楚这一点。但无论如何,谁会读那些东西,对吧?当然,不是像我这样的一些铁杆开发者。你永远不知道谁可能会在你的肩膀上看着你,抓住你阅读文档,你的名声就会付诸东流。

在我终于与自己和解之后,除了尝试阅读一些文档之外,没有别的办法了,我能够编译一个在 Gallio 3.1 中运行的版本。万岁,任务完成了……至少我是这么想的。

运行那个非常简单的测试用例大约需要半分钟,每次,一直。那肯定不对吧?!幸运的是,这里这里已经提到了这个问题。

最终解决方案

正如在缓慢的 Gallio帖子中所提到的,解决这些问题的一种方法是安装最新的非官方版本的 Gallio。谈论前沿,就是这样。我感到我的心脏在我的胸膛里怦怦直跳,肾上腺素飙升,我花了一些严重的约束才不喊出来。

所有最新版本的 Gallio的链接、一次下载、一次安装和一些重新附加的参考资料就足够了。我终于能够在 .Net framework 3.5 和 .Net framework 4.0 中运行我的测试用例。

哦,对了,吃那个孩子。现在谁是男人……谁是男人(放松 Lieven,呼吸……呼吸……)

最后的想法

至少可以说,这对我来说是一段有趣的旅程。我已经恢复了一些失去的谦卑。
你们这些现在还没有打瞌睡的人,你们有我的敬意。

于 2010-07-01T20:07:24.263 回答