专栏首页深度学习计算机视觉Performance Testing as aService for Web Applications

Performance Testing as aService for Web Applications

1、成员组成

(1)组长:张俊怡

(2)组员:孟令军

2、文献基本情况介绍

(1)文献名称:Performance Testing as aService for Web Applications

(2)文献作者:Amira Ali,Nagwa Badr

(3)发表时间:2015

(4)文献出处:IEEE Seventh International Conference on Intelligent Computing and Information Systems

(5)文献页数:6

3、文献内容概述

本文介绍的是一种通过云计算平台为web应用性能测试提供服务的模型,性能测试是一种完成软件测试以显示Web应用程序在一定的工作量下行为性能的测试。云计算新兴技术可用于软件领域工程提供云测试,以克服常规测试的缺陷。因此,测试即服务(TaaS)是以完全自动化的方式引入作为执行所有测试活动的服务模型,按需付费使用。而且,TaaS提高了测试效率,缩短了时间测试所需的成本。在本文中,性能TaaS引入了Web应用程序框架,它提供了所有这些性能测试活动包括自动测试用例生成和测试执行。另外,建议框架解决了许多问题:maxImIze资源利用率和持续监测来保证系统执行。

软件测试是一个确保软件质量的重要活动。但是,它是一个劳动密集型过程,需要很多成本,时间和成本资源。随着软件系统的发展,更复杂,规模大,增加了传统测试困难。因此,将软件测试迁移到云端环境是克服缺陷的最佳解决方案传统测试利用云无限存储,资源和可扩展基础设施,从而减少执行测试大型应用程序所需的时间并导致成本效益解决方案引入TaaS作为服务模型执行所有测试活动,包括测试用例生成并测试执行。

主要技术、方法的详细阐述(最好结合具体实例阐述)

Web应用程序的性能TaaS框架介绍,用户可以在其中提交测试请求执行性能测试程序自动。

TaaS框架

系统架构由三层组成:A:用户界面层,B:服务管理和测试层和,C:IaaS层。A.用户界面层:它是TaaS中的第一层用户提交与输入相关联的测试请求的平台测试过程需要(即SUT(software under test)的日志文件),定义测试请求要求(即截止日期)并接收测试结果。B.服务管理和测试层:这层提供了TaaS系统的主要功能。

它由六个主要模块组成:

1.请求控制器:它是第一个正在使用的模块,管理和测试层请求控制器,接收通过用户界面提交的测试请求,将测试请求转换为测试任务并保存任务TestTasks数据库中的要求然后添加任务list_test_tasks由调度程序模块调度。

2.调度程序:该模块负责调度任务和定义任务执行顺序。作为,调度器模块从请求控制器收List_ Test_Tasks,调度程序在List_ Test_Tasks中计算每个任务的优先级然后按照每个优先级对任务进行排序。要计算任务优先级,我们考虑两个参数:每个任务的截止日期和等待时间。任务应该是在用户定义的期限之前执行,等待时间被认为是在等待任务期间减少浪费的时间

执行。调度方法的工作原理如下:根据任务期限升序(即任务与较早的截止日期将有更高的优先级)。然后任务有相同的截止日期将根据等待时间再次排序

每个高等待时间的任务将首先执行。

3.监控:为确保拟议系统的可靠性,该模块负责跟踪所有的实时状态任务和资源。

4.资源分配:这个模块旨在最大化资源利用,提高系统负载平衡。

5.容错:本模块专注于处理任何在执行任务期间是否发生故障虚拟机故障由于监视器模块跟踪虚拟机/任务状态发生故障时,Monitor模块转发失败细节到容错模块,通过应用一个来处理它的以下策略:

任务执行中出现策略1失败的任务将被重新列入List_ Test_Tasks。

在VM中发生策略#2失败,所有的任务分配给失败的虚拟机将返回到要重新安排的列表测试任务。

测试任务处理:这是最重要的模块所有性能测试程序都完成,包括自动测试用例生成和测试执行。

性能测试的目的是为了执行不同用户模拟用户行为的测试脚本负载水平以确保Web应用程序满足质量要求,因为Web应用必须快速可靠。测试任务处理模块由以下组成三个子模块:i测试用例生成,ii测试脚本执行和iii结果收集器。

测试用例生成:它是最重要的部分性能测试中的测试用例定义为一组步骤由并发虚拟用户数进行测试包括在吞吐量方面SUT的性能(即执行请求每秒)和响应时间(即时间)被执行某些请求)。测试中的每个步骤case是对SUT的HTTP请求。下图展示了如何基于从SUT的日志文件中提取的信息自动生成测试用例。性能测试中的测试用例必须模仿真实的用户使用SUT时的行为,否则测试用例完全相同不一致和测试将无效。这就是为什么我们使用日志文件SUT生成测试用例。

测试脚本执行:如下图所示。测试以上生成的脚本将由其中一个执行性能测试工具将产特别的SUT的工作负载。在提出的系统中,Apache JMeter被用作执行性能测试脚本的工具。

结果收集器:结果收集器模块IS负责将所有测试脚本的结果收集成单报告然后显示给用户。

进行实验来评价:其中,n是任务数量,i,T_Finishi和T_Submiti是任务i的执行时间,完成时间,并提交时间。

进行实验来评价的实用性提出的制度。在哪里使用两台虚拟机。使用VMware [34]创建虚拟机物理机。每个虚拟机有2GB内存。使用场景在实验中如下:许多测试请求都是通Taa平台发送的用户界面。2.请求控制器将提交的测试请求转换成测试任务并保存其要求的请TestTasks数据库。3.Scheduler模块从请求中接收List_ Test_Tasks控制器,然后调度器将任务分解成一个排序任务列表。排序任务列表发送到资源分配模块,然后资源分配将每个任务分配给一个虚拟机每个任务在分配的VM上执行。哪里测试生成案例,然后执行测试脚本最后执行测试结果返回给用户。

如表所示,通过比较Hit值FCFS和我们提出的时间表方法,据观察我们提出的调度方法的命中率始终较高。

4、学习总结

云计算作为新兴技术提供通过所有云资源和基础设施提供测试服务的机会,导致了显降低测试所需的成本、时间和精力。由于Web应用程序的广泛传播,必要性性能测试增加以确保可靠性和不同工作负载下Web应用的速度。在本文中,引入了用于Web应用程序的TaaSWeb应用程序的性能测试模型。在提出的系统中,全部执行测试程序自动化的方式提高了测试效率减少测试软件系统所需的时间。进行实验以验证我们提出的框架。实验结果显示我们的提出了调度算法具有更好的效果。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • ISUX Xcube智能一键生成H5

    腾讯ISUX
  • 复杂业务下向Mysql导入30万条数据代码优化的踩坑记录

    从毕业到现在第一次接触到超过30万条数据导入MySQL的场景(有点low),就是在顺丰公司接入我司EMM产品时需要将AD中的员工数据导入MySQL中,因此楼主负...

    haifeiWu
  • SQL中GROUP BY用法示例

    GROUP BY我们可以先从字面上来理解,GROUP表示分组,BY后面写字段名,就表示根据哪个字段进行分组,如果有用Excel比较多的话,GROUP BY比较类...

    Awesome_Tang
  • 中国互联网协会发布:《2018中国互联网发展报告》

    在2018中国互联网大会闭幕论坛上,中国互联网协会正式发布《中国互联网发展报告2018》(以下简称《报告》)。《中国互联网发展报告》是由中国互联网协会与中国互联...

    钱塘数据
  • 不只是软件,在线也可以免费下载百度文库了。

    不管是学生,还是职场员工,下载各种文档几乎是不可避免的,各种XXX.docx,XXX.pptx更是家常便饭,人们最常用的就是百度文库,豆丁文库,道客巴巴这些下载...

    课代表
  • 【倒计时7天】2018教育部-腾讯公司产学合作协同育人项目申请即将截止!

    腾讯高校合作
  • 知识体系解决迷茫的你

    最近在星球里群里都有小伙伴说道自己对未来的路比较迷茫,一旦闲下来就不知道自己改干啥,今天我这篇文章就是让你觉得一天给你 25 个小时你都不够用,觉得睡觉都是浪费...

    桃翁
  • 理工男图解零维到十维空间,烧脑已过度,受不了啦!

    让我们从一个点开始,和我们几何意义上的点一样,它没有大小、没有维度。它只是被想象出来的、作为标志一个位置的点。它什么也没有,空间、时间通通不存在,这就是零维度。

    钱塘数据
  • 考研英语-1-导学

    英二图表作文要重视。总体而言,英语一会比英语二难点。不过就写作而言,英语二会比英语一有难度,毕竟图表作文并不好写。

    用户1335799
  • 【系统设置】CentOS 修改机器名

    ken.io

扫码关注云+社区

领取腾讯云代金券