这可能是一个简单的问题,但看起来我可能正在以更难的方式感知。 我需要设计一个框架来自动化应用程序。这是一个简单的应用程序,它需要一个请求,处理它,并发送响应。 请求类似于带有一些参数的HTTP get命令。响应是XML。
根据请求的类型及其参数,应用程序准备响应XML。以下是一些例子
1)对于带有param1,param2的requestA,响应XML是
<response type="B" ....>
<subresponse .... />
</response>
<response type="C" ....>
<subresponse .... />
</response>
<response type="D" ....>
<subresponse .... />
</response>
2)对于带有param1,param2的requestB,响应XML是
<response type="C" ....>
<subresponse .... />
</response>
3)对于带有param1,param2的requestC,响应XML是
<response type="C" ....>
<subresponse .... />
</response>
<response type="B" ....>
<subresponse .... />
</response>
正如我们所看到的,响应始终遵循以下模式。
1)始终输出根xml标记
2)root的孩子有标签响应。
3)儿童可以通过类型属性(A,B,C等)进行区分。
对于自动化,我们包括的主要验证是
a)验证这些XML
b)内容验证
我建议做
i)针对XSD进行XML验证以验证a)
ii)使用xPath验证内容b)
我们有50个这样的响应类型,根据请求,它将被发送到客户端。
如果还有其他更好的方法,请告诉我,以便我能有效地管理此框架以采用未来的更改。
答案 0 :(得分:2)
验证XML,然后使用Xpath声音检查其内容,就像检查XML的合理方法一样。关于后者,您可以将XML提供到适当的XSLT样式表中,以检查不符合或意外的结构并返回您选择的有意义的错误 - 或者确实纠正XSLT中的常见错误,并将修改后的XML输出发送到客户端。除此之外,了解您正在使用的工具会很有帮助,但我希望能回答您关于您正在考虑的方法的问题。