39

我尝试为用 VB.net 编写的 NUnit 测试编写以下 TestCase:

<TestCase("FirstNode", "<node id=\"FirstNode\">")>
Public Sub GetNode_GivenSomeNodeId_ReturnCorrectNode(ByVal nodeId as String, 
                                            ByVal expectedXml as String)

    (Call the method under test and request the xmlNode with the provided id...)

    Assert.AreEqual(expectedXml, returnedXml)
End Sub

但是,作为第二个参数传递给测试用例的 xml-node 无效,因为这显然不是转义双引号的正确方法。我确信我可以找到一种解决方法来检查被测方法是否返回预期的 XML 节点,但我很好奇:

是否有一些巧妙的方法可以将包含双引号的字符串作为参数传递给 NUnit 测试?

4

1 回答 1

72

在 VB 中转义双引号的正确方法是将双引号加倍:

<TestCase("FirstNode", "<node id=""FirstNode"">")>
于 2011-10-11T13:11:22.387 回答