性能测试学习之数据驱动性能测试

了解数据驱动测试理念、能够如何在jmeter中用多种方式实现数据驱动测试。

知识点:字符串拼接、计数器、循环控制器

性能测试学习之数据驱动性能测试_第1张图片

1. 数据驱动的理念

1.1 定义

  • 从数据文件中读取测试数据,驱动测试过程的一-种测试方法
  • 数据驱动可以理解为更高级的参数化

1.2 特点

  • 测试数据与测试代码分离.
  • 数据控制过程

1.3 好处

  • 减少测试代码量
  • 降低脚本开发和维护的成本
  • 便于用例的修改和维护(不用修改代码)

1.4 要求

  • 强的代码能力
  • 较强的分层架构设计思维

2. 数据驱动的使用场景

  • 复杂的业务流程
  • 根据业务场景分流
  • 符合条件的并发场景

2.1 电商业务模型

  • 打开首页
    • 登陆:浏览床上用品、查看购物车、浏览生活用品.
    • 注册:重定向登录、一退出登录
    • 浏览电子商品

3. jmeter数据驱动实战

3.1控制方式

  • 参数化(推荐数据库参数化)
  • 逻辑控制器

3.1 场景

  • 登陆后男人浏览电子商品
  • 登录后女人浏览化妆品

3.2 步骤

  • 准备SQL数据

性能测试学习之数据驱动性能测试_第2张图片

  • JemterSQL数据库连接

性能测试学习之数据驱动性能测试_第3张图片

  • JDBC Request

填写的名称与数据连接的名称保持一致

性能测试学习之数据驱动性能测试_第4张图片

Variable names:变量名。展示时变量名_序号

Result variable name:以数组形式存储

  • 察看结果树

性能测试学习之数据驱动性能测试_第5张图片

性能测试学习之数据驱动性能测试_第6张图片

  • 添加逻辑控制器if
    • 男人:

      性能测试学习之数据驱动性能测试_第7张图片

    • 添加请求或者打印结果

      性能测试学习之数据驱动性能测试_第8张图片

    • 女人:

      性能测试学习之数据驱动性能测试_第9张图片

    • 添加请求或者打印结果

      性能测试学习之数据驱动性能测试_第10张图片

目前只是执行了一次结果,我们需要全部执行数据库中的数据,需要引用到CSV

  • 添加CSV Data 根据id进行取值

    • 编写test.csv文件

      性能测试学习之数据驱动性能测试_第11张图片

    • 编写SQL语句变为动态数据 取CSV中id的值

      性能测试学习之数据驱动性能测试_第12张图片

    • 设置线程数

      性能测试学习之数据驱动性能测试_第13张图片

    • 配置CSV

      性能测试学习之数据驱动性能测试_第14张图片

  • 结果

    性能测试学习之数据驱动性能测试_第15张图片

4. jmeter数据驱动实战二

上边采用了CSV的方式实现,这次通过计数器实现

  • 添加函数助手计数器

性能测试学习之数据驱动性能测试_第16张图片

  • 函数助手V 实现拼接

    性能测试学习之数据驱动性能测试_第17张图片

  • 更新if写法

    性能测试学习之数据驱动性能测试_第18张图片

  • 添加循环控制器

性能测试学习之数据驱动性能测试_第19张图片

性能测试学习之数据驱动性能测试_第20张图片

5. 两者区别

  • CSV:线程数4是真实的并发

  • 循环控制器:在一个线程中运行,不是并发操作

    好了各位,以上就是这篇文章的全部内容了,能看到这里人啊,都是人才。

    如果这个文章写得还不错,觉得「王采臣」我有点东西的话 求点赞求关注❤️求分享 对耿男我来说真的非常有用!!!

    白嫖不好,创作不易,各位的支持和认可,就是我创作的最大动力,我们下篇文章见!

    如果本篇博客有任何错误,请批评指教,不胜感激 !

我其实并不孤僻,简直可以说开朗活泼,但大多时候我很懒,懒得经营一个关系还有一些时候,就是爱自由,觉得任何一种关系都会束缚自己,当然最主要的,还是知音难觅。我老觉得跟大多数人交往,总是只能拿出自己的一个维度,很难找到和自己一样兴趣一望无际的人。

感谢每一个认真阅读我文章的人,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

性能测试学习之数据驱动性能测试_第21张图片

 资料获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,关注公众号:一个心态巨好的朋友  扣1即可自行领取。
 

你可能感兴趣的:(软件测试,学习,单元测试,开发语言,测试用例)