【问题标题】:Pretty print Xml input and output漂亮的打印 Xml 输入和输出
【发布时间】:2016-03-03 07:23:04
【问题描述】:

我有一个决策表,它接受 Xml 作为输入参数之一,并返回 Xml 作为输出参数之一。例如:

!|FixtureThatUsesXml|
|request|fieldX|response?|
|<Xml><SomeContent a="1"/></Xml>|2| |

是否可以将请求和响应中的 Xml 格式化(使用语法着色和适当的换行符)?对于响应,也许我可以返回经过编码以包含富文本格式的文本?有什么可能?

【问题讨论】:

    标签: xml pretty-print fitnesse


    【解决方案1】:

    您可以让您的 (Slim) 夹具输出 HTML。这将在显示响应时使用。

    如果您想超越预先格式化的文本,对请求进行格式化并不是那么容易,因为您必须使用 wiki 格式化功能并且必须在夹具中将其删除。

    您可以轻松地在您的 wiki 中拥有预先格式化的 XML(通过包含在 {{{}}} 中),然后您的夹具将在实际使用 XML 之前将其删除。但是在您的请求中突出显示等并不容易。

    XML fixtures I use 接受预先格式化的输入并显示格式化的响应。但这并不像你描述的那么花哨(见this sample test output)。

    【讨论】:

    • 感谢您回复弗里德。我尝试在输出中包含&lt;pre&gt; 标记,但这导致没有显示任何内容(可能与应用于spanignore 类有关。我尝试使用&amp;nbsp;,但内容被转义了。是否有输出 HTML 的特殊方式?另外,我在我的 Xml 中使用了!define 变量,这样我的表格行就不会跨越多行;我尝试包含{{{ }}} 似乎除了显示括号外没有任何效果. 甚至直接在桌子上使用有无!- -!;也许最新版本不支持这个?
    • 我链接的示例使用的是最新的 FitNesse,因此它是受支持的。尝试将&lt;pre&gt; 包含在&lt;div&gt; 中。要在 HTML 页面中显示 XML,您需要转义 XML(我使用 Apache Commons html 转义)。请查看github.com/fhoeben/hsac-fitnesse-fixtures/blob/master/wiki/… 以了解{{{ 和`}}}` 的实际作用。
    • 太棒了,&lt;div&gt; 完美运行!事实证明,如果我的桌子上有!(如!|FixtureThatUsesXml|),{{{ 不起作用。我改为以 Fixture That Uses Xml 的形式命名我的表,而 ! 不是必需的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多