适用于Mac的Wolfram Workbench 2.0中MUnit的位置在哪里?

mmo*_*ris 8 wolfram-mathematica

我有适用于Mac的Mathematica 8.0和Wolfram Workbench 2.0.我想使用MUnit对我正在创建的包进行单元测试,但我发现MUnit上缺少文档令人沮丧.

Sal Mangano的Mathematic Cookbook是最好的资源.第19.11节介绍了"将Wolfram Workbench的MUnit包集成到前端".

我想一旦我将MUnit暴露给前端,我将能够查询MUnit API?.只有一个问题,我找不到MUnit包.我尝试按照书中的建议找到MUnit目录:

find / -name MUnit -print 2> /dev/null
Run Code Online (Sandbox Code Playgroud)

,但没有运气.

mmo*_*ris 7

如果你对这个答案进行投票,请向Szabolcs表示他的回答.他对此非常有帮助.

MUnit的位置取决于首次使用Wolfram Workbench功能的顺序.这只是一个理论,但它解释了为什么find最初无法找到MUnit,但现在却找到了.在我的系统上,MUnit位于:

/Applications/Wolfram\ Workbench.app/configuration/org.eclipse.osgi/bundles/214/1/.cp/MathematicaSourceVersioned/Head/MUnit
Run Code Online (Sandbox Code Playgroud)

要使用Wolfram Workbench在您的系统上找到MUnit:

  1. 创建一个调用代码的测试用例.
  2. 在测试用例测试的代码中放置一个断点.
  3. 调试测试用例.
  4. 一旦你停在破发点,保持步入代码,最终你将步入Test.m当你进入TestID->"MyTest-20111230-L0X3S3".
  5. 将鼠标悬停在Test.m的Tab上,您将看到Test.m的位置.

Mac版本中Test.m的位置

使用find以下方法在系统上查找MUnit :

  1. 在Wolfram Workbench中创建一个测试用例.
  2. 打开终端并输入: find / -name MUnit -print 2> /dev/null

find 结果:

/Applications/Wolfram Workbench.app/configuration/org.eclipse.osgi/bundles/214/1/.cp/MathematicaSourceVersioned/Head/MUnit
/Applications/Wolfram Workbench.app/configuration/org.eclipse.osgi/bundles/214/1/.cp/MathematicaSourceVersioned/Version5.2/MUnit
/Applications/Wolfram Workbench.app/configuration/org.eclipse.osgi/bundles/214/1/.cp/MathematicaSourceVersioned/Version6/MUnit
Run Code Online (Sandbox Code Playgroud)

找到位置后,您可以使用以下方式查询MUnit包:( 注意:路径可能略有不同)

AppendTo[$Path, 
  FileNameJoin[{"/", "Applications", "Wolfram Workbench.app", 
    "configuration", "org.eclipse.osgi", "bundles", "214", "1", ".cp",
     "MathematicaSourceVersioned", "Head", "MUnit"}]];
Needs["MUnit`"];
?MUnit`*
(* Need a blank line after ?MUnit`* otherwise a nasty message is generated. *)
Run Code Online (Sandbox Code Playgroud)


Sza*_*lcs 5

我找到MUnit.m

...\configuration\org.eclipse.osgi\bundles\347\1\.cp\MathematicaSourceVersioned\Head\MUnit
Run Code Online (Sandbox Code Playgroud)

在Eclipse(或Workbench)安装目录中.我没有Mac,但无论平台如何,它都应该在同一个地方.

Mathematica 6和5.2还有另外两个版本(HeadVersion5.2或替换路径Version6).