锁定老帖子 主题:C#有GUI测试的框架么?
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-07-14
这个网址有一些关于.net开源东东的简单介绍你可以去看看,当然也有介绍测试框架的
www.csharpzy.com |
|
返回顶楼 | |
发表时间:2006-07-14
wzywjy 写道 这个网址有一些关于.net开源东东的简单介绍你可以去看看,当然也有介绍测试框架的
www.csharpzy.com 谢谢.似乎NUnitForm是我想要得东西.但它的例子过于简单,不知道是否完成了所有的功能. 我研究一下,看看它是否工作.再次感谢wzywjy的回复! |
|
返回顶楼 | |
发表时间:2006-07-14
jimmy_c 写道 引用 不过异步消息和线程中的对话框的测试问题,不难解决啊
不是很容易,至少我对几个对话框写了一点儿测试代码,发现它们非常不稳定. 在有些简单对话框中可以工作,对于复杂对话框就可能死锁.Tab控件中的控件不能显示.等等. 相比较而言,java中似乎简单很多. 即使解决了一个对话框的问题,实现整个框架也是一个挺复杂的工作.需要实现很多代码才能达到实用的目的. 所以我很想知道是否已经有人做过类似的工作,或者研究过这个问题.[/b] 如果没有办法知道代码逻辑,有可能是会有这样的问题。 如果要测试的足够透彻,还得需要知道代码逻辑。根据代码逻辑来做出各种各样的输入组合。 测试是针对性很强的一项活动,特别是用来测试GUI的工具,最好还是要针对项目编写。通用的GUI测试是完全不可能的。通用的GUI测试,就像是你在操作一个用Klingon语言做界面语言的程序一样,完全在瞎猜. 能够完全知道输入组合输出可能性的黑盒测试才是最为快捷有效的测试方式。 不晓得Java在不知道GUI逻辑规则的情况下,是否能够完善的处理好这些问题。在我所知的win32 GUI测试方面,除了MSAA是需要编程实现的,还有些记录脚本的测试工具,其他的GUI测试的工具或者框架还真不知道。一直都觉得GUI自动测试,是不可能的任务。 搞GUI的自动测试,不如直接加入BugReport机制,回头慢慢收集各种bug来的方便。 |
|
返回顶楼 | |
发表时间:2006-07-14
引用 测试是针对性很强的一项活动,特别是用来测试GUI的工具,最好还是要针对项目编写。通用的GUI测试是完全不可能的。通用的GUI测试,就像是你在操作一个用Klingon语言做界面语言的程序一样,完全在瞎猜. 能够完全知道输入组合输出可能性的黑盒测试才是最为快捷有效的测试方式。
看来你一点都不理解我所问的这个问题,也不知道Jemmy到底是做什么的,为什么把它称为框架,它和Robot,WinRunner之类的测试工具有什么区别。我想告诉你的是,Jemmy我用过一年多,我们写了至少上千个测试例子,它对于我们项目的帮助很大,原来需要测试人员2周跑完的Regression Test后来缩减到了2~3天,极大程度地提高了开发程序的质量。你说它不可能,有点可笑。 你所理解的“通用的GUI测试”和“在不知道GUI逻辑规则的情况下,是否能够完善的处理好这些问题”,不知说的是什么。测试有不知道逻辑的测试吗?除了“大猩猩”测试以外,我不知道还有什么。对于XP开发模式,测试就是程序逻辑的表达。不过“知道逻辑”和“代码侵入”,显然是两个完全不同的概念。我不知道为什么你一定要强调“黑盒”和“代码侵入”的必要性。我没有看出来它们有什么必要的。 引用 搞GUI的自动测试,不如直接加入BugReport机制,回头慢慢收集各种bug来的方便。
做测试可以不要Bug Report的吗?自动化测试当然需要Bug Report。测试框架可以提供错误的Log信息。程序员在Assert()的地方加入错误信息,可以很好的帮助错误的定位和调试,减轻测试人员的负担,减少测试人员和开发人员沟通上的开销。“回头慢慢收集”,如果什么都可以慢慢做,当然好,但是如果能够有提高效率的办法,又何乐而不为呢? |
|
返回顶楼 | |
发表时间:2006-07-15
般门弄斧了。
既然jemmy这么不错,那么大可仿照的作一个简单的。 在正式工程里面加入测试的代码。要是没有啥好办法,我也不会提这个建议了。当然这个都是基于我的理解力和技术观点来的。 在我所参与的win32项目中,虽然努力的按照mvc来分层,但是依然很难做每一个单元的独立测试。也不晓得那里那里出问题了,或者说根本是方向性错误.所以黑盒测试+Bugreport是比较好的办法. 还有点抱歉的是,bugreport我没有说清楚意思,我这里指的bugreport是发布之后的的自动bug 收集过程.从用户那里来收集各种bug.而不是测试人员的Bug Report过程.有些像ms的程序出错之后的提示的那个提交bug的面板. 因为项目的最终用户是个人.各种情况都有可能出现,这样的bug 收集机制是必须的. |
|
返回顶楼 | |
发表时间:2006-09-26
MS内部有不少GUI自动化测试框架,大多基于MSAA,复杂而不统一.Win32的控件与.Net的控件又有很大差别.托管控件要好识别的多 .Net3.0中加入了Windows.UIAutomation的空间从而对GUI自动化测试有了个大而统一的局面, 在其基础上MS正在开发更加专注的GUI自动化测试框架以填补MS再这方面的空白.正式发布日期仍然是个未知数.
|
|
返回顶楼 | |