随笔分类 -  自动化测试

摘要:我们在做web测试时,经常会使用WebBrowser来进行一些自动化的任务。而有些网页上面会用IFrame去嵌套别的页面,这些页面可能不是在相同域名下的,这时就会出现跨域问题,无法直接在WebBrowser中获取到IFrame中的元素。下面来做个试验,自己写个页面嵌套一个百度的首页,然后在我们自己的页面上输入要查询的词,最后在百度上自动完成搜索。<!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml"><head> <meta char 阅读全文
posted @ 2012-12-29 13:25 heqichang 阅读(12520) 评论(11) 推荐(5) 编辑
摘要:昨天在做一个网页测试时,它会弹出一个对话框(如下图)对用户进行一个认证。使用Spy++侦测这个对话框的结构如下,我们看到两个Edit就在最后两个节点上。我们现在就可以利用FindWindow以及FindWindowEx这两个函数来帮我们找到这个窗体及窗体上所有的控件,然后帮我们完成自动化测试。下面这个程序就是帮我们自动输入用户名与密码。using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Runtime.InteropServices;using System 阅读全文
posted @ 2012-02-21 10:56 heqichang 阅读(13678) 评论(2) 推荐(0) 编辑
摘要:事务(Transaction)我们可以划分一批请求组合成一个事务,然后我们就可以跟踪分析这个事务请求所花费的总体时间了。事务可以通过简单的指定开始的request和结束的request来设定。在Root节点右键鼠标,选择Add Transaction…点击。然后在弹出的对话框中,填写事务的名字,选择好第一个Request和最后一个Request,事务会自动将它们两个之间所有的request都添加进来。点击OK之后,就可以在我们的编辑窗口见到我们的两个request添加进事务了。点击运行一下,我们可以看到测试运行结果,里面包含了事务运行的总时间等。添加数据源(Add Data Source)在之 阅读全文
posted @ 2011-12-11 18:16 heqichang 阅读(2854) 评论(8) 推荐(3) 编辑
摘要:接着上次那篇文章,这次我来详细说一下性能测试编辑窗口中的各个功能及操作。上次说到我们编辑窗口中的树结构,每一层都会有不同的属性设置。Root Level:可以说是一条Web性能测试的入口点,比如:可以在此设置用户验证、代理或者为这条测试添加一些描述信息等;Request Level:在Web性能测试中记录下来的每一条单独的请求,可以在此设置用户思考时间(think time)、请求方式(GET或者POST)或者设置是否缓存等;Request Parameter Level: 这里是每次请求的参数设置,可以在此设置是否进行Url编码、值还有名称。这里所有的属性设置你都可以在属性视窗中看到说明,如 阅读全文
posted @ 2011-11-20 21:29 heqichang 阅读(9572) 评论(2) 推荐(1) 编辑
摘要:概述网站的性能由很多不同的因素决定,比如:网络速度、不同的浏览器或者在同一时刻的用户数量、硬件处理能力等因素,都会影响到网站的性能和响应时间。Web性能测试就是帮助开发者在开发工程中就能确认并尽力修复这些问题。下面讨论几种主要的性能测试:Validation and verification test: 这个测试用来帮助我们检验输入值和是否能在期望的入口安全登录。比如:一个字段要求你输入一个Email地址,那么你必须正确输入才能提交页面。Web page usability test: 它相当于是在生产环境中,通过模拟用户行为来查看网站内容是否完整。比如:每个链接是否正确或者页面上的信息是否显 阅读全文
posted @ 2011-10-29 22:46 heqichang 阅读(11040) 评论(9) 推荐(1) 编辑
摘要:有时,我们会对同一条测试用例根据不同的输入数据运行多次测试。为了不重复写单元测试代码,VS允许我们的每一条单元测试函数都可以连接自己的数据源,数据源的文件格式可以是CSV、XML、SQL Server数据库或者Oracle数据库等。下面我继续使用上次进行单元测试的函数,该函数体如下:public double CalculateTotalPrice(double quantity){ double totalPrice; double unitPrice; unitPrice = 16.0; totalPrice = unitPrice * quant... 阅读全文
posted @ 2011-10-08 19:14 heqichang 阅读(4575) 评论(0) 推荐(0) 编辑
摘要:概述在软件开发过程中,我们可能会有很多的模块,而每个模块有可能又由许多函数组成。当我们的系统发生错误时,我们必须定位发生错误的模块,然后精确到模块中某个具体的函数中,而这工作往往又是非常浪费时间和生产效率的,如果系统越复杂,那么定位错误的成本将越高。所以在每个函数集成进模块时,必须通过严格的单元测试来验证。在VS2010中我们可以为我们的函数自动生成单元测试,无论它是否是public或者的private的。所有用于单元测试的类和函数都被定义在Microsoft.VisualStudio.TestTools.UnitTesting这个命名空间中。创建Unit Test我们先创建一个被测试的类库工 阅读全文
posted @ 2011-09-30 18:57 heqichang 阅读(9552) 评论(0) 推荐(1) 编辑
摘要:概述在VS2010中为我们的软件测试提供了很多功能及管理工具。这其中包括有:Test View、Test List Editor、Test Results、Code coverage Results、Test Runs以及在VS2010中新增的功能Test Impact View。工具介绍下面我们一一来介绍VS中为我们提供的工具。首先我新建了一个简单的待测试的工程:CalculatorLibrary,在Class1中,添加了一段简单的代码,如下:using System;using System.Collections.Generic;using System.Linq;using Syste 阅读全文
posted @ 2011-09-27 20:33 heqichang 阅读(21078) 评论(6) 推荐(6) 编辑