Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么Fortran中的单元测试框架依赖Ruby而不是Fortran本身?_Ruby_Unit Testing_Fortran - Fatal编程技术网

为什么Fortran中的单元测试框架依赖Ruby而不是Fortran本身?

为什么Fortran中的单元测试框架依赖Ruby而不是Fortran本身?,ruby,unit-testing,fortran,Ruby,Unit Testing,Fortran,总结:水果只能与Fortran编译器一起使用,尽管使用Ruby可以增强其功能。检查以下作者Andrew Chen的答案 =========================================== Fortran可用的单元测试框架(XUnit)似乎包括: funit 水果 flibs ObjexxFTK(商业) 在他们的网页中,funit、fruit和flibs提到他们依靠Ruby来实现功能。我对ObjexxFTK一无所知。在我看来,Java、C#和Delphi等语言中的XUn

总结:水果只能与Fortran编译器一起使用,尽管使用Ruby可以增强其功能。检查以下作者Andrew Chen的答案

===========================================

Fortran可用的单元测试框架(XUnit)似乎包括:
funit

水果

flibs

ObjexxFTK(商业)


在他们的网页中,funit、fruit和flibs提到他们依靠Ruby来实现功能。我对ObjexxFTK一无所知。在我看来,Java、C#和Delphi等语言中的XUnit框架只依赖于相应的语言本身。那么为什么Fortran框架选择依赖Ruby而不是Fortran本身呢

编写一个具有真正XUnit克隆的复杂性、功能和动态特性的单元测试框架在Fortran中是非常可怕的,Fortran真正是为数值分析而设计的。

这也取决于您对单元测试框架的期望。如果你想要一个GUI,或者它是一个IDE的插件,那么fortran可能不是最简单的方法,即使它是可行的。这就是为什么其他语言往往是首选

我已经在fortran中为fortran编写了一个简单的单元测试框架,这是python的la nose。基于控制台,但它完成了它的工作。这完全取决于你的需要。(这让我觉得我应该把它改编成更通用的版本并发布。)

由于您似乎正在使用delphi,您可以将文件对象放入DLL中,并将其插入dunit,例如。

Xichen

这是安德鲁·陈,《水果》的作者

在果的核心,它是用纯FORTRAN语言编写的。核心功能包括断言、夹具设置、摘要、错误计数和报告。设计目标是拥有自己语言的测试能力

水果1.0是大约8年前用纯FORTRAN开发的。然后Ruby被添加,Rake在2008年被添加,我想

这在FORTRAN中尤其重要,因为在构建环境中引入另一种语言或编译器可能是禁止的

然而,为了使测试框架灵活、优雅、信息丰富,其他更灵活的语言是正确的工具(就连我的同事也认为FORTRAN可以做任何事情,世界是由FORTRAN运行的)。选择Ruby是因为它的可读性和易于修改

据我所知,funit没有Ruby就无法运行,但FRUIT只能使用FORTRAN编译器运行。它已经过英特尔F95和g95的测试

请查看水果维基中的2个教程: 1.在3分钟内将水果添加到您的饮食中(纯FORTRAN) 2.在20分钟内将水果加入你的饮食(含红宝石)

希望能有帮助

陈汉忠陈航

非常感谢您的评论!尽管如此,根据您的经验,您是否可以在编写Fortran本身可能难以处理的XUnit克隆时提到一些特定的技术问题?Fortran中除了数字运算以外的任何东西都是可怕的。XUnit框架通常非常动态,它们使用检查、RTTI等。Fortran并没有为此做好准备。哦!非常感谢您的解释!非常感谢您的时间和善意的评论!我再试试水果!