代码改变世界

随笔分类 -  自动化测试

Windows GUI自动化测试技术的比较和展望

2009-10-10 11:14 by yufun, 6433 阅读, 收藏, 编辑
摘要: 【这里的自动化测试专指GUI自动化(不包含Web)】以前写过一篇跟UI自动化测试有关的技术,谈到了一个自动化测试工具必备的几个功能,而且也提到了Windows平台自动化测试工具所基于的一些技术。下边就说一下这些技术的比较和展望,同时也包含了一些纠结……Windows API 识别窗口:需要通过FindWindow和EnumWindows来查找到窗口句柄,然后再调用其它A... 阅读全文

很久没来了,更新一下状态

2009-09-23 17:57 by yufun, 377 阅读, 收藏, 编辑
摘要: 前一段儿跟微软的UIA较劲,UI Automation的tree总是断掉,而且是很经常。 但是如果用MSAA的话,那个tree就是好好的。这个充分说明UIA对以前的MSAA的support不够,根本就不能完全替代MSAA。好不容易盼到Windows Automation API 3.0出来了,经过在Windows7上边简单的测试,大部分tree断掉的问题都不存在了(因为UIA和MSAA结合的更紧密... 阅读全文

[转载] 我的测试观点与经验

2009-01-20 18:27 by yufun, 503 阅读, 收藏, 编辑
摘要: 克莱沃曼的博客我大部分都看了,呵呵最主要的是他所分享的一些对测试和开发的看法我比较认同,我也转载了几篇文章在我的博客里边,今天看到这位仁兄搞了一个合集,赶快拿来给大家分享一下:分享一:http://peking2toronto.spaces.live.com/Blog/cns!A975CAF18FBB985B!1122.entry下载:《我的测试观点与经验》 Online: 《我的测试观点与经验》... 阅读全文

获取当前操作系统的版本

2009-01-20 14:46 by yufun, 611 阅读, 收藏, 编辑
摘要: OperatingSystem os = Environment.OSVersion;switch (os.Platform){ case PlatformID.Win32NT: switch (os.Version.Major) { case 3: return "Windows NT 3.51"; case 4: return "Windows NT 4.0"; case 5: switch ... 阅读全文

获取当前执行的函数(Testcase)名称

2009-01-20 14:45 by yufun, 553 阅读, 收藏, 编辑
摘要: 可以通过下边的方法获得执行到当前代码的整个Call Stack,然后通过遍历,找到自己需要的函数名称: System.Diagnostics.StackTrace st = new System.Diagnostics.StackTrace(); System.Diagnostics.StackFrame[] frames = st.GetFrames(); 阅读全文

C#中三种截屏方式总结

2009-01-20 11:36 by yufun, 32271 阅读, 收藏, 编辑
摘要: 昨天写自动化测试的CASE的时候,碰到一个疑难杂症,调用截图的函数去截取一个Popup窗口,但是总是把背景程序给截下来,Popup窗口就跟看不到一样。本来以为是同步的问题,也就是以为先截图再点击弹出Popup窗口了。后来加了N个Thread.Sleep来测试,发现根本不是因为这个原因,而是截图的函数截不下来这个窗口。这个为啥呢,只好把截图的函数代码翻出来看,以前是用这种方式的:BitBlt(dcI... 阅读全文

跟UI自动化测试有关的技术

2009-01-12 17:04 by yufun, 1126 阅读, 收藏, 编辑
摘要: 大家都知道,针对UI的自动化技术一般要支持下列的东西:1. 识别窗口 能够识别尽量多的窗口种类,支持尽量多的UI技术。比如Win32、WinForm、WPF以及WebPage(这个比较特殊,确切的说不能叫控件)的控件类型2. 操作窗口对标准类型的控件方法的支持,比如按下按钮,在Listview中选择Item等3. 验证结果实质就是能够拿到控件的状态以及控件相关的信息4. 错误恢复这个其实属于自动化... 阅读全文

转载:一个UI自动化的小例子

2009-01-12 17:03 by yufun, 614 阅读, 收藏, 编辑
摘要: 转载自:http://peking2toronto.spaces.live.com/Blog/cns!A975CAF18FBB985B!411.entry?wa=wsignin1.0随便用一个小例子来解释一下UI自动化的开发吧.我先现在有一个Button是disable的状态,一旦Button enable,我们就Click弹出一个窗口.我们使用的测试工具就有同步的功能.1.自动化工具生成的程序(... 阅读全文

转载:再谈UI自动化测试

2009-01-12 17:03 by yufun, 568 阅读, 收藏, 编辑
摘要: 转载自:http://peking2toronto.spaces.live.com/Blog/cns!A975CAF18FBB985B!410.entry?wa=wsignin1.0最近还是发现有一些文章,个人对于自动化测试报有很大的怀疑态度,本人也对相关的文章给与了驳斥。我个人和公司对自动化测试都是报有很积极的态度的。这里我想再次的写一篇文章来阐述到底UI自动化测试可以做什么,作为一个优秀的UI... 阅读全文

转载:关于开发和测试

2009-01-12 17:03 by yufun, 559 阅读, 收藏, 编辑
摘要: 转载自:http://peking2toronto.spaces.live.com/Blog/cns!A975CAF18FBB985B!384.entry最近总是有一些网友问我一个问题“现在有机会转开发,应不应该转?”。我想我也需要单独发表一篇文章来表达一下自己的看法了。我会从一个新入行的测试人员一直往上发展大概会是一个怎样的情况入手,来表达我的观点“开发技术是... 阅读全文

转载:用一个小例子来说明手工测试,自动化测试,系统命令,编程语言,API的关系

2009-01-12 17:02 by yufun, 660 阅读, 收藏, 编辑
摘要: 转载自:http://peking2toronto.spaces.live.com/Blog/cns!A975CAF18FBB985B!416.entry很多人理解的自动化就是把手工测试case用脚本和工具转变成自动化测试。也就是说把手工测试的每一个步骤用脚本来模拟,从而执行test case。那么自动化的所有问题就归结于,如何用工具和脚本来转化手工操作步骤了。还有很多非常senior的,但是不会... 阅读全文

在自动化测试中,如果控件不能识别,你会怎么做?

2009-01-12 17:00 by yufun, 4078 阅读, 收藏, 编辑
摘要: 我们知道,在做自动化测试时,总会碰到一些自动化测试工具不能识别的控件,比如WPF控件、用户自己绘制的控件、以及一些复杂的组合控件等。当自动化工具对这些控件无能为力的时候,我们怎么办? 这个时候是最考察自动化测试人员能力的时候,因为能解决多少这种问题,决定了你能够自动化多少Testcase。 解决这种问题的方法我认为大概有一下几种: 1. 如果是因为自动化测试工具的限制,比如对于WinForm的控件... 阅读全文

在C#中如何模拟鼠标键盘操作

2009-01-12 16:59 by yufun, 1394 阅读, 收藏, 编辑
摘要: 上一篇讲了在自动化测试中如果控件不能识别,我们最后的办法是模拟鼠标键盘,这一篇就讲如何来做。首先我先讲在C#中怎么做,至于在C++或者脚本中怎么做,留在后边来讲对C#来说,键盘的模拟比较简单,在.Net Framework中System.Windows.Forms.SendKeys这个类鼠标呢,看下边代码: 1: [DllImport("user32")] 2: public static ext... 阅读全文

在C#中调用API进行截屏

2009-01-12 16:58 by yufun, 2878 阅读, 收藏, 编辑
摘要: 看代码:需要Reference下面的DLL: System.Drawing System.Windows.Forms WindowBase 1: using System; 2: using System.Collections.Generic; 3: using System.Text; 4: using System.Windows; 5: using System.Windows.Fo... 阅读全文
点击右上角即可分享
微信分享提示