• 1
  • 2
分享

一、Jmeter的关联用到了哪些方法去实现?

接口的响应结果通常为html和Json格式的数据,主要会用到正则提取器、Json提取器,还有Xpath器以及边界值提取器,还有beanshell来进行数据的提取,而对于html这种响应结果我们通常会用正则或者是Xpath来进行数据的提取;对于Json格式的数据通常会用Json提取器。

二、jmeter参数化有哪几种方法?

第一种,可以通过函数助手来实现参数化,比如说像_RandomString这种随机函数;

第二种:通过CSV读取文档数据实现参数化;

第三种:通过配置元件、用户定义的变量来实现参数化;

第四种:通过前置处理器中的用户参数也可以实现参数化。

三、用户定义的变量和用户参数的区别?

用户定义的变量,在启动运行时获取一次值,在运行过程中,不再动态获取值(不管设置多少个线程数或者循环多少次,都只获取一次值,不会变);

用户参数在启动时获取一次值,在运行过程中,每次使用该参数都会动态获取一次值。

四、如何用jmeter做性能测试,并给出报告呢?

  1. 我们先要做需求的分析,你要确定你们的这个产品的功能以及架构,还有我们的这个用户的这个分布的一个情况,通过这些,你能制定你的这个测试目标;

  2. 你就要开始搭建这个测试环境,因为我们的这个性能测试环境和功能测试环境、自动化测试环境是不能共用的,这是要独立搭建我们的测试环境的;

  3. 根据我们的这个接口来写我们的这个接口的脚本;

  4. 就是要对我们刚才写好的这个脚本来进行性能的转换,在这个里面要注意特别重要的一个点就是要加上性能场景的设计;

  5. 就是要去搭建我们的监控平台,因为监控平台它是对整个过程的一些数据来进行一个监控与收集的,只有收集的这些数据你才能做接下来的第6步;

  6. 就是我们的性能分析,分析的时候,我们要先从硬件、网络、配置,再来做我们的这个应用的一个分析,你不能说一上来就做应用分析,那你是分析任何问题你都分析不出来的;

  7. 我们要把整个这个过程所产生的所有的数据收集,最终整理成为一份报告来提交给我们的领导,那这个才是我们领导层所需要的整个过程的一份测试报告。

五、如何用jmeter录制脚本

  1. 在测试计划里添加线程组;

  2. 在测试计划里添加非测试元件的HTTP代理服务器;

  3. 配置代理服务器-----端口可以设置成8888,把目标控制器选成测试计划 > 线程组,这样做的目的是录制的脚本直接生成在线程组下面,然后设置Requests Filtering(请求过滤器),若想排除一些我们不需要的东西,则可以点击添加建议排除,但这个也只能排除大部分的,小部分的还是排除不了;

  4. 启动代理服务器;

  5. 打开浏览器,对浏览器进行设置,设置对应的代理信息-----地址:127.0.0.1,端口:8888,保存;

  6. 访问网站:http://www.lemonban.com;

  7. 查看线程组,可看到下面录制的脚本在增加;

  8. 添加监听器-察看结果树;

  9. 运行,看录制的脚本能否运行成功;

  10. 把不是网站的脚本禁用,看运行是否还能成功;

  11. 运行成功之后删除禁用的那些脚本。

六、Get和Post的区别?

  1. get在url里传参,post在bady里传参;

  2. get长度限制(浏览器限制),post传参长度没有限制;

  3. get相比较post安全高。

七、jmeter和soapui接口测试工具有什么区别?

  1. 它们的用例组织方式是不一样的,jmeter来说比较扁平,而soapui它最上层是工作空间,工作空间下面每一个会有一个项目,然后项目下面又可以添加多个TestSuite(测试套件)这种;

  2. 在支持的接口类型和测试类型上面,jmeter和soapui工具差不太多,它们都可以支持Soap和Rest接口,也都可以进行接口的压力测试和功能测试;

  3. 在流程控制方面,jmeter可以由switch控制器等一系列控制器和beanshall脚本进行一个流程控制,而soapui它一般可以用Conditional Goto以及Groovy脚本来进行一个流程控制;

  4. 在断言方面,jmeter它的一个测试计划、线程组还有取样器都可以添加断言,soapui每一个request可以添加断言;

  5. 在脚本扩展能力,jmeter主要支持Java,而soapui主要支持groovy。

八、jmeter和postman接口测试工具的区别?

  1. 它们的用例组织方式是不一样的,像jmeter它的用例组织方式就比较扁平化,它没有测试集合和空间的一个概念,直接就是TestPlan,而postman它比较轻量级,主要是针对的是单个http请求;

  2. 它们支持的接口类型以及测试类型也是有不一样的,jmeter相对来说比较强大一些,它可以支持Rest风格的接口,还有Soap类型的接口,以及它可以去测试接口测试功能,以及测试一个性能测试,而postman它只支持Rest风格的接口,而且也基本上做的比较多的是功能测试;

  3. 在流程控制上面它们也是不太一样的,比如说jmeter它是通过像Switch控制器等一系列控制器以及像beanshall脚本来实现一个流程控制的,而postman通过JavaScript来进行一个流程控制;

  4. 它们两个在脚本结果解析和展示以及在断言还有一些功能扩展性也是有很多的区别的。

九、你是如何开展项目的性能测试的?

  1. 测试准备:我们先要去了解需求,熟悉业务,确定咱们的这个性能的指标(指标要非常清晰的确定下来),然后准备我们的测试方案、测试用例、测试模型、预估工作量等等为后期做好准备;

  2. 环境搭建:因为性能测试是需要独立的测试环境,所以我们需要独立 的搭建应用环境、数据库环境还有网络,另外还有一个性能的监控环境;

  3. 脚本开发:环境搭建好了之后开始写脚本,写脚本要根据不同的一个协议来选择不同的工具。写好脚本之后就要进行一个调试,调试通过了之后,然后把它转化为性能的脚本 (非常重要);

  4. 测试执行:我们根据前期写好的这些测试用例或者测试模型来设计不同的性能的场景来运行。在这个运行过程中,要使用性能的监控来监控运行过程中的数据,有了这些数据才能做后面的性能分析;

  5. 结果分析:通过监控,我们可以做一些初步的分析,分析硬件的、分析这个应用的,然后还有各种反复的调优反复的定位,最终发现你这个问题,能调优的自己调优,不能调优的要提交缺陷,然后还要提交测试报告。

十、什么是测试用例?什么是测试脚本?它们的区别?

测试用例和测试脚本是完全两个不一样的概念的东西。

测试用例是为了测试的执行而编写的一个关于测试的输入输出以及执行的步骤,还有测试环境、执行结果和预期结果这么一个文档的集合,它是我们测试执行的一个非常重要的依据。

而测试脚本是我们为了达到某一些特定的需求而编写的,比如说我要做自动化测试要编写自动化的脚本,要去做性能测试要编写性能脚本等等,但一般来说,我们的测试脚本也会对应的一个测试用例。


作者:糖心baby

原文链接:https://blog.csdn.net/qq_54725031/article/details/117423611

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   几点心得体会  质量管理核心思想是预防,预计可能出问题时要主动与团队沟通,不要等问题出现了才介入。当然如果团队不配合,先让其受点教训再介入也是个办法。  提出问题要有理有据,自己要先理解我们的流程为什么要这么要求,要想别人接受我们提出的问题,先要说服我们自己。流程没有规定的不能强制要求执行,当然也不能放之不管,可在遵守质量管理基本原则的基础上提出建议,或者事后再给出答复。  有原则性,当观点与团队不一致时,要在遵守基本原则的基础上争取对方的妥协,不能项目说怎样就跟着怎样。也不能死守成规,可在取得相同效果的情况下,简化流程,这就需要掌握好“度”。  主动了解各方面的知识,要想别人接受我们,先...
            0 0 785
            分享
          • 12月19日消息,美国当地时间周日,推特宣布将禁止用户在其平台上免费推广其他社交媒体,违规者将被要求删除推文,严重者将被封禁账户。今年10月末,在埃隆·马斯克(Elon Musk)斥资440亿美元收购了推特后,许多用户在推特上分享他们的其他社交媒体账户。推特在周日的声明中表示:“我们认识到,我们的许多用户在其他社交媒体平台上都很活跃。然而,我们将不再允许某些社交媒体平台在推特上免费推广。”该公司继续称:“我们将删除仅仅为了推广其他社交平台而创建的账户,以及包含下列平台的链接或用户名的内容,Facebook、Instagram、Mastodon、Truth Social、Tribel、Nostr...
            0 0 1068
            分享
          •   Selenium是一个用于自动化Web浏览器的Python库。它提供了一组强大的工具和API,使开发者能够以编程方式控制浏览器的行为,模拟用户与网页的交互。  Selenium可以用于各种Web自动化任务,包括网页测试、数据采集、UI自动化等。它支持主流的Web浏览器,如Chrome、Firefox、Safari等,并提供了丰富的功能,例如:  页面导航:Selenium可以模拟用户在浏览器中输入URL或点击链接来导航到不同的网页。  元素定位和操作:开发者可以使用Selenium定位页面上的元素,例如文本框、按钮、下拉菜单等,并进行点击、输入文本、提交表单等操作。  页面截图:Selen...
            0 0 1236
            分享
          • 简介pytest是动态编程语言Python专用的测试框架,它具有易于上手、功能强大、可扩展性好、兼容性强、效率高、第三方插件丰富等特点。功能特征:完整的文档,包括安装,教程和PDF文档简单而又详细的断言模式(使用纯assert语句)自动发现测试模块和功能(以test为标识)可以运行unittest和nose框架的测试用例灵活的固件,用于管理小型或参数化的长期测试资源丰富的插件架构,拥有三百多个外部插件和丰富的社区编写规则:测试文件以test_开头(以_test结尾也可以)测试类以Test开头,并且不能带有 init 方法测试函数以test_开头断言使用基本的assert即可自动发现规则:如果未...
            11 12 3157
            分享
          •   导读  基于风险驱动的交付是百度实践智能测试——感知智能阶段非常重要的研究方向,基于风险驱动的交付,源于三个现状:  一、不是所有的项目都有风险,80%以上的项目无任何的关联bug和线上问题。  二、不是所有的测试任务都能够揭错,无效的质量行为(有bug发现的质量行为/所有质量行为)占比非常高。  三、测试人员也有误判的可能,漏测一直存在。  通过以上三个现状,可见如果能够有方法逼近:测该测的项目、做该做的质量行为、评风险评得准,那么对测试效能和召回都有极大的帮助。  接下来我们将持续刊登三篇文章,来揭秘百度实践基于风险驱动的交付的冰山一角:  1、百度搜索业务交付无人值守实践与探索:从具...
            0 0 1090
            分享
      • 51testing软件测试圈微信