热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

web测试批量造数据的三种方法

关于测试造大量数据,我想到了三种方法:1、通过数据库插入2、通过接口录入3、通过web自动化脚本录入(如果以上两种不被许可的情况ÿ

关于测试造大量数据,我想到了三种方法:
1、通过数据库插入
2、通过接口录入
3、通过web自动化脚本录入(如果以上两种不被许可的情况,可以用这个,只是做的慢点)

下面一一介绍:
1、通过mysql数据库来创建一个存储过程的方式插入
比如

delimiter $$ #声明存储过程的结束符号为$$
create procedure auto_insert()
BEGINdeclare i int default 1;#声明变量i&#xff0c;也就是为了保证数据唯一性while(i<300)do# 创建300条数据insert into runoob_tbl(runoob_title, runoob_author, submission_date) values("学习 Python",i, NOW());#插入数据sqlset i&#61;i&#43;1;end while;
END$$ #$$结束
delimiter ;call auto_insert();#调用存储过程

2、通过接口创建数据

通过接口首先要知道怎么做接口测试
然后设置变量时候可以用计数器、函数助手等生成函数&#xff0c;并用到参数中
&#xff08;比如计数器&#xff0c;一看就懂~~&#xff09;
在这里插入图片描述
如果项目这边说只能手动录入的话&#xff0c;上面两种方法就不被允许了&#xff0c;那么可以用下面的方法

3、selenium 的chrome浏览器静默模式&#xff0c;比如chrome的headless模式
chrome的headless模式意思是会正常的打开浏览器执行操作&#xff0c;但是我们看不到浏览器界面&#xff0c;这样的话&#xff0c;也就省下了打开和关闭浏览器的时间
比如

# -*- coding:utf-8 -*- # 建议所有都加编码
from selenium import webdriver #导入webdriver包from selenium.webdriver.chrome.options import Options
chrome_options &#61; Options()
chrome_options.add_argument(&#39;--headless&#39;)
driver &#61; webdriver.Chrome(chrome_options&#61;chrome_options)
#这几行能实现chrome的headless模式
driver.get("http://www.baidu.com")
driver.find_element_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").click()print(driver.title)
driver.quit()

4、依旧用selenium 来做&#xff0c;用自己喜欢的编程的多线程方式可以节省时间&#xff0c;只是很费电脑哈~~
比如我喜欢用python的 threading模块

唉&#xff0c;只能从界面录入的话&#xff0c;都是野路子~~


推荐阅读
  • 本文作为探讨PHP依赖注入容器系列文章的开篇,将首先通过具体示例详细阐述依赖注入的基本概念及其重要性,为后续深入解析容器的实现奠定基础。 ... [详细]
  • 在Python网络编程中,多线程技术的应用与优化是提升系统性能的关键。线程作为操作系统调度的基本单位,其主要功能是在进程内共享内存空间和资源,实现并行处理任务。当一个进程启动时,操作系统会为其分配内存空间,加载必要的资源和数据,并调度CPU进行执行。每个进程都拥有独立的地址空间,而线程则在此基础上进一步细化了任务的并行处理能力。通过合理设计和优化多线程程序,可以显著提高网络应用的响应速度和处理效率。 ... [详细]
  • 如何高效启动大数据应用之旅?
    在前一篇文章中,我探讨了大数据的定义及其与数据挖掘的区别。本文将重点介绍如何高效启动大数据应用项目,涵盖关键步骤和最佳实践,帮助读者快速踏上大数据之旅。 ... [详细]
  • MySQL 数据变更后如何实现实时同步至 Elasticsearch
    在 MySQL 数据变更后,如何实现与 Elasticsearch 的实时同步是一个常见的需求。本文介绍了通过配置 MySQL 的 Binlog 功能,结合中间件如 Canal 或 Debezium,将数据变更事件实时捕获并同步到 Elasticsearch 中的方法。此外,还探讨了如何处理数据删除操作,确保 Elasticsearch 中的数据与 MySQL 保持一致。文章还简要对比了 VSCode 和 Dev 两种开发环境的优缺点,为开发者提供参考。 ... [详细]
  • 如何使用R语言高效连接并操作MySQL数据库
    如何使用R语言高效连接并操作MySQL数据库 ... [详细]
  • 字节跳动深圳研发中心安全业务团队正在火热招募人才! ... [详细]
  • 本周,我深入研究了 ECharts 插件的使用方法,整体感觉插件操作较为简便,但后台算法较为复杂。此外,我还学习了 MySQL 函数的新应用,进一步提升了数据库操作的灵活性。同时,分享了自己在 Python 书籍外借过程中的体验,总结了一些实用的借阅技巧和心得。 ... [详细]
  • 分布式开源任务调度框架 TBSchedule 深度解析与应用实践
    本文深入解析了分布式开源任务调度框架 TBSchedule 的核心原理与应用场景,并通过实际案例详细介绍了其部署与使用方法。首先,从源码下载开始,详细阐述了 TBSchedule 的安装步骤和配置要点。接着,探讨了该框架在大规模分布式环境中的性能优化策略,以及如何通过灵活的任务调度机制提升系统效率。最后,结合具体实例,展示了 TBSchedule 在实际项目中的应用效果,为开发者提供了宝贵的实践经验。 ... [详细]
  • 在基于.NET框架的分层架构实践中,为了实现各层之间的松散耦合,本文详细探讨了依赖注入(DI)和控制反转(IoC)容器的设计与实现。通过合理的依赖管理和对象创建,确保了各层之间的单向调用关系,从而提高了系统的可维护性和扩展性。此外,文章还介绍了几种常见的IoC容器实现方式及其应用场景,为开发者提供了实用的参考。 ... [详细]
  • 在Python编程中,探讨了并发与并行的概念及其区别。并发指的是系统同时处理多个任务的能力,而并行则指在同一时间点上并行执行多个任务。文章详细解析了阻塞与非阻塞操作、同步与异步编程模型,以及IO多路复用技术的应用。通过模拟socket发送HTTP请求的过程,展示了如何创建连接、发送数据和接收响应,并强调了默认情况下socket的阻塞特性。此外,还介绍了如何利用这些技术优化网络通信性能和提高程序效率。 ... [详细]
  • 本题库精选了Java核心知识点的练习题,旨在帮助学习者巩固和检验对Java理论基础的掌握。其中,选择题部分涵盖了访问控制权限等关键概念,例如,Java语言中仅允许子类或同一包内的类访问的访问权限为protected。此外,题库还包括其他重要知识点,如异常处理、多线程、集合框架等,全面覆盖Java编程的核心内容。 ... [详细]
  • PHP 数组逆序排列方法及常用排序函数详解 ... [详细]
  • 【漫画解析】数据已删,存储空间为何未减?揭秘背后真相
    在数据迁移过程中,即使删除了原有数据,存储空间却未必会相应减少。本文通过漫画形式解析了这一现象背后的真相。具体来说,使用 `mysqldump` 命令进行数据导出时,该工具作为 MySQL 的逻辑备份工具,通过连接数据库并查询所需数据,将其转换为 SQL 语句。然而,这种操作并不会立即释放存储空间,因为数据库系统可能保留了已删除数据的碎片信息。文章进一步探讨了如何优化存储管理,以确保数据删除后能够有效回收存储空间。 ... [详细]
  • PHP开发人员薪资水平分析:工程师平均工资概况
    PHP开发人员薪资水平分析:工程师平均工资概况 ... [详细]
  • 技术日志:Ansible的安装及模块管理详解 ... [详细]
author-avatar
私受他
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有