我正在使用Fit Fixse的Rest Fixture向返回非xml响应的url发出GET请求。有没有一种方法可以验证返回的内容中的文本/字符串(没有xpath)?Can fitnesse验证非xml输出
0
A
回答
0
我发现这个解决方案。 TEXT是支持XML和JSON的内容处理程序。可以将内容处理程序重写为TEXT并期望内容。正则表达式也可用于期望内容。
| Table:smartrics.rest.fitnesse.fixture.RestFixtureConfig | overridesContentHandlerConfig|
| restfixture.content.handlers.map | application/smil=TEXT |
!| Table:smartrics.rest.fitnesse.fixture.RestFixture | ${host} ||overridesContentHandlerConfig |
| GET | www.someurl.com | 200 | | [\s\w\d<>/=\:'.]*stringtoverify[\s\w\d<>/=\:'.]* |
0
您可以使用适合模式+ NetRunner插件(对于.Net)。
请参阅here示例,如何解析输入行到对象。
0
另一种方法是使用自定义比较器。这使您在自定义/复杂结果上自定义验证方面具有更大的灵活性。
要使用自定义的比较: 记录here(搜索 'CustomComparators')
所需的属性:
CustomComparators = <prefix:classname>[,<prefix:class name>]
动机:亭亭玉立的协议是所有字符串值。这意味着 比较复杂数据类型的预期结果和实际结果是 限于字符串相等或正则表达式匹配。如果这是 不足够,自定义比较器可以做更复杂的 比较。一旦注册,自定义比较器就会以其前缀 触发,然后在期望值前加冒号。
实施例比较实施:
public class JSONAssertComparator implements CustomComparator { @Override public boolean matches(String actual, String expected) { try { JSONAssert.assertEquals(expected, actual, false); return true; } catch (JSONException e) { throw new RuntimeException(e.getMessage(), e); } } }
例plugins.properties:
CustomComparators = json:com.acme.JSONAssertComparator
例ScriptTable用法:
|script|Customer | |check|get|cust1|json:{id:cust1,name:"John Doe"}|
相关问题
- 1. Fitnesse的XML输入/输出
- 2. XML输入/与Java输出FitNesse的
- 3. Fitnesse/dbFit:未验证的列
- 4. Yii2 codeception验证和XML报告输出
- 5. 通用xsd验证和xml输入和输出配对
- 6. .NET版本输出验证
- 7. 的bash +验证从输出
- 8. 命令行输出验证
- 9. 整数验证输出
- 10. html5验证错误输出
- 11. XML验证vs Java验证
- 12. Can PayloadValidatingInterceptor用于验证所需字段
- 13. Laravel spark can not显示验证错误
- 14. 为Fitnesse输出方法提供参数?
- 15. mysql存储过程 - 验证输入xml
- 16. 处理XML验证输出编程在Java中
- 17. 为xml /字符串失败测试定制输出验证
- 18. 使用python中的工具验证xml - 收集输出
- 19. 将C#对象验证为XSD并生成xml输出
- 20. Eclipse验证XML
- 21. C#xml验证
- 22. XML XSD验证
- 23. Eclipse xml验证
- 24. Aptana XML验证
- 25. PHP XML验证
- 26. stax xml验证
- 27. Powershell XML验证
- 28. XML验证
- 29. 以UTF8而非UTF16输出DataTable XML
- 30. 转换输出非XML文档