写手Remoting测试工具

基于.NET开发分布式系统。经经常使用到Remoting技术。在測试驱动开发流行的今天。假设针对分布式系统中的每一个Remoting接口的每一个方法都要写具体的測试脚本,无疑很浪费时间。所以,我想写一个能自己主动測试remoting接口的小工具InterfaceTester。并且。当分布式系统中的某个remoting接口出现bug时。该小工具能够提交须要模拟的数据,以便在调试remoting服务的环境中。高速定位和解决bug。

  InterfaceTester执行起来后的效果例如以下图:

1.怎样使用

(1)首先,填上要測试的而且是已经公布的Remoting服务的地址信息。

(2)选取要測试的remoting接口所在的程序集。通常是一个dll。选定程序集后,InterfaceTester会自己主动搜索该程序集中定义的全部接口。并将其绑定到“接口类型”的下拉列表。

(3)从 “接口类型”的下拉列表中选择要測试的接口。选定接口后。InterfaceTester会自己主动搜索该接口中定义的全部方法,并将其绑定到“目标方法”的下拉列表。

(4)从 “目标方法”的下拉列表中选择要測试的方法。InterfaceTester会依据该方法所要求的參数,自己主动生成參数录入界面。

(5)在參数录入界面上,输入用于測试的參数的值,然后,点击“调用”button, InterfaceTester便会调用上述指定地址的remtoing服务的指定接口的指定方法。假设调用的方法有返回值,则会在“调用返回”的panel上显示该值。假设返回的不是一个简单类型,而是一个对象,则“调用返回”的panel上将会以xml的形式显示这个对象的各个属性值。

2.实现原理

就这个小工具的实现而言,主要用到的技术就是反射(reflection)。

另外,须要注意的就是,依据參数的类型,生成录入界面。

详细细节大家能够參见源代码。眼下,InterfaceTester支持的被測试方法的參数类型是有限制的:

(1)支持简单的数据类型,像string、int、bool等。

(2)支持List<>、I List<>、IDictionary<,>、Dictionary<,>等集合类型。

(3)支持简单的数据结构的class(如像Point、自己定义的Entity等)。

3.源代码解决方式

  下载源代码并用VS打开后,解决方式下有三个项目:InterfaceTester、DemoInterface、DemoService。

(1)InterfaceTester项目是我们本文的主角:用于remoting接口測试的小工具。

(2)DemoInterface和 DemoService则是为了试试小工具而构建的一个小demo。 DemoInterface定义了公布的remoting服务的接口。 DemoService则是公布的remoting服务。

在试用时。先启动 DemoService项目,再启动InterfaceTester。就能够试试我们的小工具功能了。

4.源代码下载

  InterfaceTester

  针对这个remoting接口測试小工具,大家假设有什么好的建议。请留言告诉我:)

版权声明:本文博主原创文章,博客,未经同意不得转载。

时间: 2024-10-13 06:09:02

写手Remoting测试工具的相关文章

动手写一个Remoting测试工具

基于.NET开发分布式系统,经常用到Remoting技术.在测试驱动开发流行的今天,如果针对分布式系统中的每个Remoting接口的每个方法都要写详细的测试脚本,无疑非常浪费时间.所以,我想写一个能自动测试remoting接口的小工具InterfaceTester.而且,当分布式系统中的某个remoting接口出现bug时,该小工具可以提交需要模拟的数据,以便在调试remoting服务的环境中,快速定位和解决bug. InterfaceTester运行起来后的效果如下图: 1.如何使用 (1)首

动手写一个Remoting接口测试工具(附源码下载)

基于.NET开发分布式系统,经常用到Remoting技术.在测试驱动开发流行的今天,如果针对分布式系统中的每个Remoting接口的每个方法都要写详细的测试脚本,无疑非常浪费时间.所以,我想写一个能自动测试remoting接口的小工具InterfaceTester.而且,当分布式系统中的某个remoting接口出现bug时,该小工具可以提交需要模拟的数据,以便在调试remoting服务的环境中,快速定位和解决bug. InterfaceTester运行起来后的效果如下图: 1.如何使用 (1)首

谈谈单元测试之(四):测试工具 TestNG

前言 上一篇文章<测试工具 JUnit 4>中提到了 JUnit 4,并对 JUnit 4 做了简单的讨论,这篇文章我们将要围绕另一款测试工具讨论 -- TestNG.其实,这篇文章应该写在<测试工具 JUnit 3>之后,和<测试工具 JUnit 4>之前,为什么这么说呢? 那是因为,TestNG 是在 JUnit 3 之后出来了,而 JUnit 4 是在 TestNG 推出之后,综合 JUnit 3 的优点,并且借鉴了 TestNG 的优势,才推出的.但是,考虑到,

手游云测试工具TestBird登陆韩国

欢迎来到unity学习.unity培训.unity企业培训教育专区,这里有很多U3D资源.U3D培训视频.U3D教程.U3D常见问题.U3D项目源码,[狗刨学习网]unity极致学院,致力于打造业内unity3d培训.学习第一品牌. [狗刨学习网]报道 / 中国移动游戏本土市场在经过2013-2014两年的爆发期之后逐渐饱和,在精品化日益明显的今天,已有许多游戏商开始向国际移动游戏市场进军,从海外引入变为本土精品的海外输出.然而,在诸多CP出海之时,时常会遇到一些"水土不服"的问题,除

我用clojure写了一个测试网站压力的工具

说明: 网站压力测试工具有很多,ab,jmeter等等.但是当你真正测试自己的系统时,特别是动态的系统,比如oa系统,那些工具似乎都不好使了.(可能是我研究不深). 面临的问题: 1.用户需要登陆 2.按照用户的操作习惯,按序访问一系列url 源代码: https://github.com/jianglibo/pressure-it 如何使用: (defn oa-user-login   [cs]   (let [login-url "http://someappurl.cc/Login&quo

开源Web测试工具介绍

HtmlUnitHtmlUnit 是 JUnit 的扩展测试框架之一.HtmlUnit 将返回文档模拟成 HTML,这样您便可以直接处理这些文档了.HtmlUnit 使用例如 table.form 等标识符将测试文档作为 HTML 来处理.它同样需要遵循 JUnit 测试框架结构的 Java™ 测试程序. MaxQMaxQ是一个Web功能测试工具.它包括一个记录测试脚本的HTTP代理,一个用于重放测试的命令行实用程序.代理记录器自动存储提交到表单的变量,那么你无需用手书写它们. jWebUnit

移动WEB测试工具 Adobe Edge Inspect

要用到的内容: Adobe Edge Code CC      https://creative.adobe.com/products/code?promoid=KFKML Adobe Edge Inspect CC   https://creative.adobe.com/zh-tw/products/inspect或者http://html.adobe.com/edge/inspect/ 也可以注册Adobe账号,在creative cloud下载安装包,这两个是免费的,我是从creativ

数据库测试工具,谁更锋利?

本文从DBUnit开始介绍一系列测试工具,无论是旧轮子,还是新轮子... Utilities-DBUnit.Spring-test-dbunit 都不放过,但最后亮出新利器...... 1-DBUNIT 数据库测试工具事实上的标准就是DBUnit.根据http://www.dbunit.org/的介绍,其1.0版本早在2002年就已经发布.它只需要一个JDBC的连接,就能完成对数据状态的控制. IDatabaseConnection con = new DatabaseConnection(Db

Android-手机QQ浏览器耗电测试工具及方法介绍

 Android-QQ浏览器耗电测试工具及方法介绍   1.目前我们常用的测试工具分别有用硬件和软件两种方式: 硬件测试需要用到的:稳压电源.电流计.电脑一套: 软件:powerstat 用的最多的是用硬件测试的方法,用软件测试是需要确认问题时才用到: 2.现在说一下测试耗电的注意事项: 首先耗电测试的软件只能装在32位的电脑上,不支持64位的电脑: 电流表: 一.用零件扣住手机正负极芯片时,注意铜片是否接触正常,测试耗电的手机铜片部分弯曲,容易接触不良.(主要用在可拆卸电池的手机上,不可拆卸的