このコード チャレンジでは、すべての TestResut ノードの反復所要時間を合計する XSLT 変換を作成する必要があります。簡単に言えば、TestResults の実行にかかった時間です。
<TestResults>
<TestResult>
<Iteration duration="00:00:02.6312623" />
<Iteration duration="00:01:03.5725194" />
<Iteration duration="00:00:07.5725194" />
</TestResult>
<TestResult>
<Iteration duration="00:00:04.6312623" />
<Iteration duration="00:01:03.6777194" />
<Iteration duration="00:02:07.5723194" />
</TestResult>
</TestResults>
TestResults/TestResult/Iteration/@duration xpath で合計を直接実行することはできませんが、ここでは時間を表すティックで変換する必要があります。同時に複数の変換を回避してすべての期間を合計するベスト プラクティスは何ですか?
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<xsl:variable name="TotalDuration" select="sum(TestResults/TestResult/Iteration/@duration)"/>
<Summary>
<Duration>
<xsl:value-of select="$TotalDuration"/>
</Duration>
</Summary>
</xsl:template>
</xsl:stylesheet>