• 0
  • 0
分享
  • Web端性能测试和安全测试要点——软件测试圈
  • TIMI 2022-11-10 14:42:51 字数 1902 阅读 810 收藏 0

一、安全测试

(1)SQL注入(比如登陆页面)

(2)XSS跨网站脚本攻击:程序或数据库没有对一些特殊字符进行过滤或处理,导致用户所输入的一些破坏性的脚本语句能够直接写进数据库中,浏览器会直接执行这些脚本语句,破坏网站的正常显示,或网站用户的信息被盗,构造脚本语句时,要保证脚本的完整性。

  document.write("abc")
  <script>alter("abc")</script>

(3)URL地址后面随便输入一些符号,并尽量是动态参数靠后

(4)验证码更新问题

(5)现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。

(6)Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。

(7)为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。

(8)当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。

(9)服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。

二、性能测试

1、连接速度测试

用户连接到Web应用系统的速度根据上网方式的变化而变化,他们或许是电话拨号,或是宽带上网。当下载一个程序时,用户可以等较长的时间,但如果仅仅访问一个页面就不会这样。如果Web系统响应时间太长(例如超过5秒钟),用户就会因没有耐心等待而离开。

另外,有些页面有超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面。

2、负载测试负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。例如:Web应用系统能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?Web应用系统能否处理大量用户对同一个页面的请求?

3、压力测试负载测试应该安排在Web系统发布以后,在实际的网络环境中进行测试。因为一个企业内部员工,特别是项目组人员总是有限的,而一个Web系统能同时处理的请求数量将远远超出这个限度,所以,只有放在Internet上,接受负载测试,其结果才是正确可信的。进行压力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。压力测试的区域包括表单、登陆和其他信息传输页面等。

备注:

1、负载/压力测试应该关注什么

测试需要验证系统能否在同一时间响应大量的用户,在用户传送大量数据的时候能否响应,系统能否长时间运行。可访问性对用户来说是极其重要的。如果用户得到“系统忙”的信息,他们可能放弃,并转向竞争对手。系统检测不仅要使用户能够正常访问站点,在很多情况下,可能会有黑客试图通过发送大量数据包来攻击服务器。出于安全的原因,测试人员应该知道当系统过载时,需要采取哪些措施,而不是简单地提升系统性能。

1)瞬间访问高峰如果您的站点用于公布彩票的抽奖结果,最好使系统在中奖号码公布后的一段时间内能够响应上百万的请求。负载测试工具能够模拟X个用户同时访问测试站点。

2)每个用户传送大量数据网上书店的多数用户可能只订购1-5书,但是大学书店可能会订购5000本有关心理学介绍的课本,或者一个祖母为她的50个儿孙购买圣诞礼物(当然每个孩子都有自己的邮件地址)系统能处理单个用户的大量数据吗?

3)长时间的使用如果站点用于处理鲜花订单,那么至少希望它在母亲节前的一周内能持续运行。如果站点提供基于web的email服务,那么点最好能持续运行几个月,甚至几年。可能需要使用自动测试工具来完成这种类型的测试,因为很难通过手工完成这些测试。你可以想象组织100个人同时点击某个站点。但是同时组织100000个人呢。通常,测试工具在第二次使用的时候,它创造的效益,就足以支付成本。而且,测试工具安装完成之后,再次使用的时候,只要点击几下。采取措施:采用性能测试工具WAS、ACT,LR等协助进行测试


作者:你是太阳暖人心

原文链接:https://blog.csdn.net/lxd13699/article/details/90407129

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   OpenAI 今天宣布与"常识媒体"(Common Sense Media)建立合作伙伴关系。"常识媒体"是一家非营利性组织,负责审查和评定各种媒体和技术是否适合儿童使用。希望借此通过与致力于减少科技和媒体对儿童、学龄前儿童和青少年伤害的组织合作,赢得家长和政策制定者的信任。  OpenAI 首席执行官 Sam Altman 表示,作为合作关系的一部分,OpenAI 将与 Common Sense Media 合作,根据 Common Sense 的评级和评估标准,在 OpenAI 的 GPT 市场 GPT Store 上策划"家庭友好型&...
            0 0 744
            分享
          •   前言:  在当今的数字时代,图像创作和设计领域正经历着巨大的变革。随着人工智能技术的迅猛发展,AI 绘图软件应运而生,为设计师、艺术家以及普通用户提供了全新的创作工具和体验。本评测报告旨在深入探讨这类软件的特点、功能和性能,以帮助用户更好地了解它们的优势和局限性。  在接下来的篇章中,我们将对美图AI、即时灵感、通义千问和文心一言等多款常用AI工具进行全面的评测。我们将从以下几个方面进行评估:软件的易用性、功能丰富度、绘图质量、效率和稳定性,以及大概的费用情况。通过实际的使用和测试,我们将尽力提供客观、准确的评价,为您提供有价值的参考,帮助您决定是否适合使用该软件来满足您的绘图需求。  希...
            0 0 438
            分享
          •   随着将更多资源投入到生成式人工智能领域,Meta 公司已经解散了其负责任人工智能(RAI)团队。The Information 今天援引其看到的一篇内部文本爆料了这一消息。报道称,RAI 的大部分成员将转到公司的生成式人工智能产品团队,其他人则将在 Meta 的人工智能基础设施上工作。  Meta经常对外宣称要以负责任的方式开发人工智能,甚至还专门为此设立了一个页面,列出了其"负责任的人工智能支柱",包括问责制、透明度、安全性、隐私等。  The Information 的报道援引 Meta 公司代表乔恩-卡维尔(Jon Carvill)的话说,公司将"继续优...
            0 0 886
            分享
          •   一、软件测试工程师大致有4个发展方向:  1资深软件测试工程师  一般情况,软件测试工程师可分为测试工程师、高级测试工程师和资深测试工程师三个等级。  达到这个水平比较困难,这需要了解很多知识,例如C语言,JAVA语言,数据库,数据结构,软件工程,等等,但是你要在一家公司干3--5年的话,在压力中这些技能你都会掌握!  2测试部门管理者  小的如组长,大的如测试经理,这需要你有先天的优势,善于交流沟通,善于处理人际关系!不过做两年,你也会成为老油条的!  3测试书籍编写者  出书也是很赚钱的,当你在这一行干了几年,积攒了足够的经验,可以把你的经验,具体做过的项目总结出来,现在关于软件测试的...
            0 0 860
            分享
          •   序言  由于公司在来年需要进行压力测试,所以也就借节假日的机会来学习一下压力测试的步骤,由于本人的学习时间比较短,希望各位大神朋友们能够多多的谅解并指正在下的错误,在此仅表敬意。  适应人群  1、初入门的压力测试工程师。  2、为入门但是打算在软件测试方面发展的同学。  3、对软件测试有浓厚的兴趣的人。  压力测试初窥探  压力测试顾名思义就是通过模拟指定的用户数量同时访问网站从而达到对网站进行施压,进而测试出网站在高并发问题上的性能优势劣势以及应对DDOS攻击的防护能力,这也是考验一个网站的健壮性的一个特点(本人认为的),目前主流的压力测试工具有Jmeter、RoadRunner,其中...
            0 0 297
            分享
      • 51testing软件测试圈微信