首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Python测试非python代码

使用Python测试非python代码
EN

Stack Overflow用户
提问于 2013-08-06 14:19:50
回答 2查看 365关注 0票数 0

我们正在用FORTRAN90开发一个数值模拟程序(过程化的,而不是面向对象的,不幸的是,有一些公共块存在,但没有GOTO的:-),并且正在考虑使用Python来帮助我们进行单元测试(追溯)和验证测试。我们希望在Python中建立一个测试环境,以便a)进行单元测试,b)进行验证测试(即使用知名的解决方案运行小型测试用例)。我们希望能够将不同的测试分组在一起(通过FORTRAN90过程进行单元测试,或者通过问题主题进行验证测试),并允许单独或按组运行测试。

模拟程序是基于文本输入/输出的,因此我们可以提出一些要运行的输入文件,并与验证的输出文件进行比较。但是,对于单元测试,我猜我们可能需要为每个FORTRAN90子例程编写包装器。

以前有没有人遇到过类似的情况?你能给我们什么建议?

谢谢。

(顺便说一句,用Python语言重写FORTRAN90代码还不是一个选项)

EN

回答 2

Stack Overflow用户

发布于 2013-08-06 17:28:01

如果使用"os.system()“函数,则可以直接从python脚本调用linux/unix命令。您也可以使用"subprocess“模块。

像这样使用它:

os.system("ls -G")

这将从python中调用'ls -G‘,就像你自己调用它一样。您也可以使用此命令轻松地编译和调用fortran代码。或者,如果您熟悉bash脚本,也可以将其用作单元测试的包装器。对于这些类型的任务,科学计算社区似乎更喜欢perl,但是python应该可以很好地工作。

至少你使用的是fortran90而不是fortran77。这些goto语句可以使调试代码变得非常有趣。:P

票数 1
EN

Stack Overflow用户

发布于 2013-08-06 15:04:09

这里有一个链接,可以让你深入了解如何完成你的任务:

Calling Fortran from Python

此链接还提供了对两个模块的引用-f2pyfwrapf2py的链接似乎已断开,因此您可以参阅f2py documentation here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18072977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档