我尝试为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
作为第二个参数传递给testcase的xml节点是无效的,因为这显然不是转义双引号的正确方法。我确信我可以找到一个变通方法来检查所测试的方法是否返回预期的xml节点,但是我很好奇:
是否有一些聪明的方法来传递这样一个字符串,包含双引号,作为一个参数的NUnit测试?
在VB中转义双引号的正确方法是:
<TestCase("FirstNode", "<node id=""FirstNode"">")>