新时代的商业运行在一个简单的原则上--提供优质产品和服务。在充满竞争的市场上跟上步伐你必须要有优于竞争对手的额外优势,实现这个目标最简单的方法之一是确保你的产品的回归测试(Regression testing)。测试一个产品高度依赖于测试工具的灵活性、可重复使用性以及可控的维护成本。TTworkbench(TTCN-3 tool)这个分布式的、独立的测试平台是所有这些要求的答案。
应用编程接口(API)是一组编程指令以及访问基于web应用的软件或者web工具的标准。
API可以用任何语言来开发。Mpower测试团队在TTworkbench工具平台上应用TTCN-3核心语言开发。一旦测试脚本工作完成,这些测试脚本映射到测试控制界面和测试运行界面和待测系统兼容。我们测试执行应用的协议是HTTP,SOAP,TCP.
API测试是针对系统的测试,这些系统是需要被测试的API的集合。
API是一个软件到软件的接口,不是用户界面。应用API,应用程序相互交谈,没有任何用户知情或者干预。当你从Wallet Software/Application启动在线充值交易,你需要输入你的信用卡/电子钱包/借记卡信息。数字钱包网站使用一个API [编码,并内置]发送您的信用卡/电子钱包/借记卡信息到远程应用程序,去验证你输入的信息的正确性。一旦付款成功后,远程应用程序发送通知给数字钱包网站,确认数字钱包网站(Digital Wallet website)用户能完成充值交易。
应用TTCN-3测试Web-Service是非常高效、简单和精确的。Mpower测试团队需要有一个包含所有API的WSDL文件。参照这个WSDL文件(Referencing the WSDL file),Mpower测试团队发送一个请求,这个请求包含定义的任何网站服务方法(defined signature of any web service method)并收到一个针对这个请求的反应,一旦通知被收到,下一步任务是和预期比对,比对是由TTworkbench自动化平台自动完成的。
这种使用参照设备作为待测,检查测试集正确性的方法允许无需修改测试套件的情况下测试WSDL1.1和WSDL1.2。修改可以在workspace中设置时修改。
Mpower测试团队已经成功地执行了基于SOAP和HTTP协议的待测的测试。基于HTTP1.0和HTTP1.1的应用的测试富有成效,而且仅需在配置处有限设置。SOAP和HTTP的测试执行方式即结合XML调用POST, REST, PUT方法。
对于任何待测网站或者应用HTTP/HTTPS协议开发/构建(developed/built)的待测,一旦收到状态码(status codes)如200 OK,404等,它决定着发送的请求是否被正确接收和处理到,以及发送的是不是一个被验证的请求。
作为一个金融科技公司,Mpower有一个应用不同系统模块的精细复杂架构。由银行或者个人收到的请求必须要经过处理或者一系列的actions/data retrievals,因此测试如此一个关键且复杂的系统成为一个挑战。
Mpower测试团队用一个很简单的TTCN-3方案就解决了这个问题,用这样一种方式,整体的集成测试可以端到端被执行。这种方法的另一个关键好处是,它使我们始终可以独立于任何其他待测组件和系统。
Mpower测试团队应用TTCN-3成功执行了SOAK测试,通过长时间持续施加负荷来检查CPU,内存使用率,以及内存泄漏。负载测试(Load Testing)通关过在运行时创建一些并行组件,同时触发所有已创建并行组件发送请求并分析它们的反应来实现。
TTCN-3是国际标准,因此匹配TTCN-3和待测系统数据类型的CODEC(外部编解码器),以及用作适配的插件是很容易实现。根据需求,Mpower测试团队需要建立自己私有的CODEC和适配插件。CODEC可以用JAVA开发。截至目前,这些开发的私有CODEC是ISO8583和POS.
ISO8583定义了一个消息格式和信息流使不同的系统能交换国际上普遍接受的交易请求和应答。
TTCN-3允许用户调用非TTCN-3语言开发的外部功能。Mpower测试团队开发了一些运行时插件和接口。
报告生成是只需一次点击即可。TTworkbench帮助我们管理,提供测试执行的清晰画面。统计图表显示通过的测试例数量,失败的测试例数量,以及还没有运行的测试例数量,提供了测试运行进程的明显标志。
无需手动生成文档。TTCN-3有一个自动化的文档生成功能也被叫做T3DOC.一个中央文档储存器也帮助追踪测试脚本的comments,避免维护不同版本和不同种类文档的麻烦。
TTCN-3理念,设计原则及其在金融领域的应用示例完整文档下载
下载信息 [文件大小:814.95 KB 下载次数: 次] |
点击下载文件:TTCN-3 理念,设计原则以及在金融领域的应用示例 |