干货满满!测试的时候如何构造各种测试数据?

干货满满!测试的时候如何构造各种测试数据?,第1张

功能测试的测试数据,一般是 手工构造

如果需要构造大量数据,要分析测试需求,准确清晰的分析之后,再对输入的测试数据进行分析。

一方面,我们要求测试数据要尽可能的与生产环境的数据相一致,尽可能是有意义的数据,可以通过分析使用现有系统的数据或根据业务特点来构造数据。

另一方面,我们要求测试数据输入要满足输入限制规则,尽可能覆盖到满足规则的不同类型的数据。

生成测试数据的方法:

①编写sql脚本(存储过程)在数据库端直接生成;

②编写程序代码生成(实际上也是要写sql);

③使用批量数据生成工具(DataFactory、PL/SQL Developer、TOAD等都可以);

④使用工具录制业务参数化之后长时间运行来生成。

不过使用sql来做是最灵活的,尤其是涉及到业务数据相互转换需要充分考虑到内部处理逻辑及约束时。

我们做软件测试的时候,经常需要页面有点数据,特别是涉及到一些数据统计的测试用例的时候,更是需要源源不断的测试数据让前端页面生成对应的报表测试统计的数据正确性。如果我们通过手工的方式 *** 作业务流程来实现数据的构造的话,少量数据或许还可以,数据一多就会让测试效率直线降低了。

所以作为测试,我们经常需要用一些工具来模拟业务流程,发送一些流量,从而构造出前端页面显示的数据。

那么,可以构造出流量的工具其实很多:

比如接口测试的时候,Jmeter 工具就可以通过 CSV 的方式,读取文件进行数据构造;

比如压力测试的时候,Loadrunner,Jmeter 或者 avalanche 和 Ixia 这些工具,都可以实现不同数量级的数据构造,来实现对产品持续的压力;

比如还可以通过 SQL 脚本来直接在数据库里添加数据,构造海量数据;

......

当然,这些工具和方法,每一个都可以列为一个专业测试领域,比如接口测试、性能测试、大数据测试等;我们今天要讲的方法,是相对来说比较轻量级的一些工具,大家比较容易掌握,也比较容易上手,可以直接通过 Linux 命令发送流量,简单便捷迅速!

1/分析被测试表字段

如:测试test_table表中有 id,username,user_pwd 3个字段

2/创建存储过程

    create procedure insert_test()  创建存储过程

    begin

    set @a=1

    while @a<1000 do

    insert into test_table values(@a,'chen','cf123456')

    set @a=@a+1

    end while

    end

    call insert_test()   #执行

3/执行


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9945552.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存