1

我需要测试多个返回 XML 的调用。将 XML 存储在我的单元测试的模拟类中并不是一个很好的解决方案。

我想知道是否还有另一种 Salesforce 对象类型,我可以将 XML 粘贴到单元测试期间可以访问的位置。我已经知道 PageReference 的 getContent() 在单元测试期间没有做任何事情(很糟糕)。

当然,Apex 允许在字符串文字中使用换行符,因此剪切和粘贴 XML 会更容易,但是唉……

4

2 回答 2

2

为了测试进行 xml 解析的类,我创建了简单的

final static string xmlString = 'xml goes here';

在这个测试课程中。然后我通过将此字符串传递给执行 xml 解析的方法来使用它。

为什么需要发明自行车?

于 2012-06-05T20:07:31.433 回答
2

将 XML 存储在静态资源中,然后从测试代码中查询 StaticResource 对象:

StaticResource sr = [select Body from StaticResource where Name='Test_XML' limit 1];
String xmlString = String.valueOf(sr.Body);
Dom.Document doc = new Dom.Document();
doc.load(testXML);
于 2012-06-05T15:50:37.243 回答