在我们的示例中,它们是 http://L_MailService
和 PostCodeDetails
。我们修改 TestDataCreator 以便引用以下值:
public void testCreateAnyData() { try { m_logger.finest("testCreateAnyData entry"); String schema = "PostCodeDetails"; DataObject test = m_bof.create("http://L_MailService", schema); |
接下来,作为 JUnit 测试执行此类,并记住在运行配置上设置 Cactus 参数。如果 TestDataCreator 成功执行,则它会将消息写入到应用服务器控制台,指示创建的示例文件的路径:
[22/05/06 10:21:50:343 BST] 00000055 TestDataCreat I Written C:\IBM\WID601\pf\wps\PostCodeDetails.xml
文件内容的形式为:
<?xml version="1.0" encoding="UTF-8"?> <_:TestDefinition xsi:type="l:PostCodeDetails" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:l="http://L_MailService" xmlns:_="http://scatest/issw/ibm/com"> <postCode>postCode value</postCode> <city>city value</city> <county>county value</county> <street>street value</street> <addressList> <address>address value</address> </addressList> <addressList> <address>address value</address> </addressList> </_:TestDefinition> |
我们可以将其用作我们预期的测试数据的基础,实际上,它是我们在前一部分创建示例的方式。
结束语
本文介绍了如何使用简单的框架将 SCA 模块的一组测试定义为简单的 XML 定义并执行它。该框架及其表示的思想是开放的,可适应于更复杂的情况。
也许是因为我们详细说明了测试构造的各个细节,所以得到的练习似乎很长。但实际上,构建和执行测试的工作量决不繁冗。这里描述的测试可以在 30 分钟内创建,并可以在进行中抓拍屏幕快照。
此类自动化测试是开发高质量可重用的组件的重要技术,我们强烈建议 WebSphere Integration Developer 的所有重要开发环境都定义和采用此类方法。
在以后的文章中,我们计划阐述如何应用这些思想,来测试长时间运行的业务流程和具有副作用的其他组件。