
自动化测试
文章平均质量分 55
ffeiffei
这个作者很懒,什么都没留下…
展开
-
Selenium学习笔记之五:封装几个通用的函数
<br />实际测试中,不可避免的需要等待控件完全ready,才能进行相关的操作,这个时候,就需要动态的以小步递进的方式,对某个条件判断,进行时间等待,而不是简单的等待几秒。可以把相关函数封装在一个SeleniumUtils类中,供大家调用:<br />import com.thoughtworks.selenium.Selenium;import com.thoughtworks.selenium.SeleneseTestCase;public class SeleniumUtils exte原创 2011-03-29 10:14:00 · 5522 阅读 · 0 评论 -
Nant使用简介续
若有如下代码目录结构:其中src下包含cs源文件,如dd.cs,class1下包含源文件,如aa.cs, bb.cs,class2下同样包含源文件,如cc.cs,共计4个cs文件。生成的dll文件将被放到release目录下,同时,还需要拷贝到一个公共的目录,比如//srv/release,可以编写如下nant文件来实现:原创 2011-03-04 14:17:00 · 1265 阅读 · 0 评论 -
Selenium学习笔记之四:外部化相关测试数据
在写测试代码时,把locator值直接写到测试代码里面,不具备良好的可读性,同时,后期也不利于代码的维护。如下测试代码:selenium.type("userName", "seleniumtest");selenium.type("password", "seleniumtest");如果在某个build中,控件"User Name"的属性"userName"被开发人员重新改变了,这个时候,测试代码也要做相应的改动。如果把该值外部化到一个文件中,我们仅仅需要修改该文件,不需要对代码进行修改;同时,也利原创 2011-01-31 15:41:00 · 3620 阅读 · 0 评论 -
Nant使用简介
下载地址:http://nant.sourceforge.net/1. 创建一个最简单的target:以为标记,输出预定义的常量PROJECT_NAME 和PROJECT_VER原创 2011-01-21 15:33:00 · 6871 阅读 · 0 评论 -
VIX的几个常用命令
测试到一定规模后,不免会用到虚拟机,针对VMware esx,列出几条常用的命令:1. 列出esx server上的vm的存储路径(仅列出正在运行的vm)vmrun -T esx -h https://ServerIP/sdk -u ServerUserName -p ServerPassword list2. 启动某一个vmvmrun -T esx -h https://ServerIP/sdk -u ServerUserName -p ServerPassword start "[datastore1]原创 2011-01-12 14:51:00 · 3799 阅读 · 0 评论 -
Selenium学习笔记之三
Selenium一共有6种方式来定位控件(Locating Elements):1. 控件为Hyperlink: 定位字符串为关键字"link=”加上link的显示文本,如下selenium.select("link=Register here");2. 控件具有name或者id属性,如果利用name或者id属性可以区分出来,可以采用如下三种定位字符串中的任意一种:/*control with name or id property that can identify itself. Locator str原创 2010-12-15 13:54:00 · 3796 阅读 · 0 评论 -
Selenium学习笔记之二
以在http://newtours.demoaut.com/index.php网站上完成一个简单的机票定制流程为例,慢慢优化:1. 打开eclipse,新建一个测试项目,在BuildPath-->Libraries中,加入selenium-java-client-driver-1.0.x文件下所有的jar包,以及junit包;2. 创建junit测试类SimpleWorkFlow, eclipse会自动创建测试的基本框架:3. 把SimpleWorkFlow的文件中的内容改写如下:import org.ju原创 2010-12-07 17:50:00 · 2043 阅读 · 0 评论 -
Selenium学习笔记之一
Selenium作为最流行的开源的web application的测试工具,很有必要好好的学习一下。主要学习Selenium RC,采用Java语言,开发工具eclipse, junit。开发环境准备:1. 安装JRE or JDK;2. 安装eclipse;3. 下载junit包;4. 安装firefox,并安装插件Selenium IDE, Firebug,Xpath Checker;5. 下载Selenium RC并解压缩相关链接:JRE or JDK:http://www.oracle.com/te原创 2010-12-07 17:25:00 · 2214 阅读 · 0 评论 -
Hudson配置slave machine
运行Hudson服务的机器叫做Master machine,通过Hudson的node功能,可以配置其他机器作为Master的slave,在master统一分配,运行任务。1. 启动Hudson;2. 点击Hudson-->Manage Hudson-->Manage Nodes-->New Node,输入要作为slave机器的机器名,并选中Dumb Slave;3. 配置相关的slave machine信息:点击Save,一个slave machine创建好了。可以在Hudson左侧栏中看到各个machi原创 2010-12-07 16:19:00 · 5114 阅读 · 0 评论 -
Hudson配置个人持续集成服务器
1. 安装Java Run Time or JDK,并把java安装目录设置到系统环境变量中(JAVA_HOME);2. 创建Hudson工作目录,例如d:/Hudson,并设置系统环境变量HUDSON_HOME到d:/hudson;3. 下载最新版本的Hudson安装包到d:/hudson目录下(http://hudson-ci.org/latest/hudson.war);4. 从windows命令行启动Hudson:java -jar d:/hudson/hudson.war,打开IE,输入http:原创 2010-11-26 13:55:00 · 7849 阅读 · 0 评论 -
AQtime不能启动的问题
AQtime是AQA公司,现在是SmartBear的一款用于做性能分析、代码覆盖率等的工具,只支持windows系统。使用下来,虽然易用性很好,但是工具不太稳定,对于windows 7系统,有些机器还会出现安装问题。 AQtime Version: 6.50.xxxOS: Windows 7 安装好AQtime后,点击其快捷方式,想输入激活代码,但是AQtime的界面显示后,就原创 2011-06-07 14:10:00 · 3133 阅读 · 0 评论 -
White使用简介
最近有个文件格式转换的任务,需要把一批用旧版本上创建文件用新版本打开,存为另外一种版本。想想蛮适合自动化实现的:只是涉及到一些简单的最常用的控件, 固定而机械的操作。于是就马上想到了White这个开源的项目(http://white.codeplex.com/)(公司目前还没有商业的自动化测试工具)。 UIA & UISpyWhite是基于微软的UIA(UI automation)这套原创 2011-06-09 14:42:00 · 6485 阅读 · 0 评论 -
代码覆盖率分析
无论是单元测试、API测试还是功能性测试,最终都是调用了产品的代码;如何评价这些测试的效率,是否真正全部或者大部分覆盖了产品的代码,这个时候,代码覆盖率(code coverage)就是一个比较有价值的参考指标了。通常,代码覆盖率用在如下几个方面找出程序中没有被测试代码执行到的地方;增加新的测试代码,以提高代码覆盖率;分析测试代码的效率,以便设计出更有效的测试代码或测试用例代码覆盖率常用的指标语句原创 2011-07-03 10:06:25 · 18195 阅读 · 0 评论 -
Hudson/Jenkins -- eXtreme Feedback Panel高亮任务结果
Hudson/Jenkins中,如何及时的把每个任务的结果简明扼要的显示出来,引起每个人的注意呢?eXtreme Feeback Panel这个插件提供该功能。利用该插件,我们可以把配置对应的eXtreme Feedback视图,把任务的结果输出到一个显示器上,及时的引起项目组的注意。先上效果图:插件下载地址:https://wiki.jenkins-ci.org/display/JE原创 2014-03-23 20:05:46 · 1595 阅读 · 0 评论 -
Hudson/Jenkins -- 消除svn警告: "clock of the subversion server appears to be out of sync"
Hudson/Jenkins中配置svn的URL时,有时会出现如下警告信息:“WARNING: clock of the subversion server appears to be out of sync. This can result in inconsistent check out behavior”基本选择每次重新checkout最新的版本,也会出现该警告信息,其解决原创 2014-03-01 12:32:16 · 6310 阅读 · 1 评论 -
Hudson/Jenkins--如何自定义build name
Hudson/Jenkins的job的默认的build name一般都是基于时间格式的,如何在给出一个比时间更具有意义的build name呢,可以利用以下2个插件:Description Setter Plugin下载地址:https://wiki.jenkins-ci.org/display/JENKINS/Description+Setter+Plugin该plugi原创 2014-02-23 18:11:52 · 6395 阅读 · 0 评论 -
Hudson/Jenkins--配置TestNG/JUnit的email-ext email模板
Hudson/Jenkins默认提供了发送邮件的功能,但是比较有局限性。插件Email-ext提供了比较好的email功能。安装好该插件后,可以在$JENKINS_HOME($HUDSON_HOME)/email-templates目录下定义自己的email模板。下面提供一个jelly script基于junit的测试结果生成email的模板,先上email效果图:该email rep原创 2014-02-23 17:24:29 · 12171 阅读 · 5 评论 -
MS UI Automation简介
MS UI Automation(Microsoft User Interface Automation:UIA)是随.net framework3.0一起发布的,虽然在如今这个几乎每天都有各种新名词、新技术出来的所谓的21世纪,它显得已经有些过时了。前些日子,正好一个项目,可以原创 2011-07-27 16:48:37 · 20142 阅读 · 0 评论 -
利用with关键字写sql语句的一个小技巧
在写比较复杂的sql查询语句时,涉及到一个或多个select的语句,作为另外一个select语句的查询条件的情况时,如果一下子写不出来,可以利用with关键字,生成一个临时的表,然后在基于这个临时的表进行查询,这样,就减少了select语句的嵌套,同时也降低了难度。如下所示:with temp1 as (select * from table1 where item1='item1' and原创 2011-07-06 15:34:53 · 3926 阅读 · 0 评论 -
AQtime代码覆盖率深度分析之二
AQtime的Coverage Profiler有一些不错的特性,能方便我们更好的进行代码覆盖率的检测。 New Area和 Files to Ignore当目标module被加进来是,AQtime会以树形结构,把module的对象层次图显示出来,如c/c++原创 2011-07-06 14:50:21 · 1543 阅读 · 0 评论 -
AQtime代码覆盖率深度分析之一
前一篇介绍了Code Coverage的一些指标,那么如何比较简单的评价一款软件对这些指标的支持呢。由于公司的项目组选择AQtime这个工具,所以有机会能进行比较深入的体验一下。为了避免IDE自动产生的code,我们采用记事本来编写一个简单的C dll,同时,原创 2011-07-04 17:42:41 · 2751 阅读 · 0 评论 -
使用Windows PowerShell 实现UI自动化
<br />这是从MSDN上发现的一篇文章,太长了,具体内容还是看原链接吧:<br />http://msdn.microsoft.com/zh-cn/magazine/cc163301.aspx<br /> <br /> <br />其结论是:<br /> <br />该方法非常适用于超轻型自动化的情况。当您想要执行一些快速、简便的UI自动化时,使用具有小型自定义 UI cmdlet 库的 Windows PowerShell 是个很不错的方法。当您希望从Windows PowerShell 命令行中执行转载 2010-11-03 16:14:00 · 4344 阅读 · 0 评论