我们将测试场景定义为 UML 活动图,以保持可重用性和可理解性。现在,我们必须将这些图表链接到我们的 Matlab 或 Visual Studio 环境。是否有任何实用的方法可以将活动图转换为 XML 或类似格式。我们的设计工具是 Enterprise Architect(EA)。
2 回答
XMI(XML Metadata Interchange)实际上是由同时管理UML标准的OMG定义的标准交换格式。
您可以从大多数 UML 工具(包括 Sparx Systems Enterprise Architect)导出到 XMI。
在 EA 中,您在项目浏览器中选择包含 Activity 的包,然后选择
Publish | 模型交换 | 导出-XML | 为当前包导出 XML 在
这里,您可以将包导出到多种可能的 xml 格式。
如果您想使用 API 自动执行此操作,您可以使用该方法EA.Project.ExportPackageXMI (string PackageGUID, enumXMIType XMIType, long DiagramXML, long DiagramImage, long FormatXML, long UseDTD, string FileName)
或
EA.Project.ExportPackageXMIEx (string PackageGUID, enumXMIType XMIType, long DiagramXML, long DiagramImage, long FormatXML, long UseDTD, string FileName, ea.ExportPackageXMIFlag Flags)
有关如何使用这些操作的详细信息,请参阅手册。
如果您不喜欢 XMI 格式(这是可以理解的),您当然可以将自己的导出工具编写到您自己的 XML 模式中。考虑到 XMI 的复杂性,这可能是我个人的选择。
还要记住,当从不同的工具导出相同的模型时,XMI标准很少会产生相同的文件。每个供应商对标准都有自己的解释,导致每种工具的结果不同。
“有没有可能”的答案是肯定的。如果,---你付出了很多努力。
AD 是模型一部分的图形表示。这是为人类准备的。除非您想将其输入到 AI 中,否则导出模型本身会更有意义。有必要制定一套严格的规则来创建模型。例如,活动应包含所涉及的所有操作。活动中应有一个主要的 AD。那是因为有几个元素,如 fork/join,它们没有出现在浏览器中,但与图表放在同一个包中(/element 不确定)。因此,您将从单个活动初始节点开始并遍历控件/对象流以创建一些 XML 或您想要的任何内容。
这一切都取决于,但是以这种方式简单、快速的导出可以在一天左右的时间内完成。