论坛首页 综合技术论坛

数据驱动测试

浏览 9798 次
该帖已经被评为精华帖
作者 正文
   发表时间:2009-12-09  
data[0]=['hrong','1234',true] as Object[]   
data[1]=['hrong','4321',false] as Object[]   
data[1]=['rhao','1234',false] as Object[]


有点担心的是,如果输入和输出比较复杂时,QA mm能看懂吗?

之前一个项目有一个比较大JUnit集成测试,也是类似以上的写法,
维护时发觉比较痛苦(主要是data[][]不够直观,修改输入输出时比较麻烦)
客户提出改进意见(他们也会跑这个JUnit),希望能用excel来描述输入输出,这样他自己就能追加case了
修改后发现果然更好用了

代价是:读excel比读data[][]烦
0 请登录后投票
   发表时间:2009-12-10  
ronghao 写道
daquan198163 写道
太好了,正在思考这方面的问题。
ps:我觉得适用范围可以是功能测试(如selenium测试)和集成测试(如JUnit写出的集成测试)
更进一步的我想象的可能场景是,前者由QA mm来维护测试数据文件,后者由开发人员来维护测试数据文件。


我的看法和你一致,使用范围应该是功能测试和集成测试,不包括单元测试。

恩 表示同意 。单元测试都是开发人员测
0 请登录后投票
   发表时间:2009-12-12  
这几天也在学习测试和重构
0 请登录后投票
   发表时间:2009-12-15  
不过我使用Selenium+JUnit进行功能测试(单元性质的)。比如测试登陆页面的测试。我也有点疑问:
我先说说我怎么测试的吧!

我将一个登陆页面的所有情况使用XML文件进行编写。然后使用dom4j进行解析XML。将XML的中的每个数据通过Selenium进行测试。基本上可以将登陆的所有想到的情况都测试。但是我就是不知道怎么将这些一个单独的功能测试进行整合成一个业务流的方式进行有序的测试。!

给出我的一些代码
以下这个是一个登陆数据及其验证结果
<loginPage>
	<user sid="001">
		<login>admin</login>
		<password>123</password>
		<validateCode>1</validateCode>
		<result>true</result>
		<ResultSuccessMessage>Successfully</ResultSuccessMessage>
		<ResultFailMessage>Fail</ResultFailMessage>
	</user>
	
	<user sid="002">
		<login>abc</login>
		<password>123</password>
		<validateCode>1</validateCode>
	    <result>false</result>
	    <ResultSuccessMessage>Successfully</ResultSuccessMessage>
		<ResultFailMessage>Fail</ResultFailMessage>
	</user>

	<user sid="003">
		<login>dd</login>
		<password>123456</password>
		<validateCode>1</validateCode>
		<result>false</result>
		<ResultSuccessMessage>Successfully</ResultSuccessMessage>
		<ResultFailMessage>Fail</ResultFailMessage>
	</user>
	
	<user sid="004">
		<login>def</login>
		<password>123456</password>
		<validateCode>1</validateCode>
		<result>false</result>
		<ResultSuccessMessage>Successfully</ResultSuccessMessage>
		<ResultFailMessage>Fail</ResultFailMessage>
	</user>
	
	<user sid="005">
		<login>jian</login>
		<password>1236</password>
		<validateCode>1</validateCode>
		<result>false</result>
       <ResultSuccessMessage>Successfully</ResultSuccessMessage>
		<ResultFailMessage>Fail</ResultFailMessage>
	</user>

	<user sid="006">
		<login>dddddc</login>
		<password>1234536</password>
		<validateCode>1233a</validateCode>
		<result>false</result>
        <ResultSuccessMessage>Successfully</ResultSuccessMessage>
		<ResultFailMessage>Fail</ResultFailMessage>
	</user>
........
</loginPage>

类似的将这样列出想到的所有情况!
在使用dom4j进行解析出来。调用Selenium进行页面填充。
0 请登录后投票
   发表时间:2010-01-09  
大家可以参考我之前写的一篇文章,也许有些帮助:http://www.ibm.com/developerworks/cn/opensource/os-cn-testingdata/index.html
0 请登录后投票
   发表时间:2010-07-07  
学习了,处处都是封装。学习测试中
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics