• 0
  • 0
分享
  • Web端性能测试和安全测试要点——软件测试圈
  • TIMI 2022-11-10 14:42:51 字数 1902 阅读 871 收藏 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

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 一、测试常见问题和流程篇1、介绍一下测试流程(重点,常见!)需求评审、测试计划、测试用例、用例评审、冒烟测试、测试执行、验收测试、风险评估、上线\观察、问题跟进、测试报告、复盘会议;根据自己的日常经验来回答,每个点的工作内容都需要清晰掌握,有可能就某个点如何工作进行提问。2、介绍一下测试方法按阶段:单元测试、集成测试、系统测试、验收测试按手段:黑盒测试、白盒测试、灰盒测试其他:冒烟测试、回归测试3、介绍一下测试用例设计方法(用例设计方法&测试方法需分清楚)黑盒测试用例设计:等价类划分法、边界值分析法、错误推测法、因果图法、正交试验分析法、流程分析法白盒测试:语句覆盖、判定覆盖、条件覆盖...
            8 8 813
            分享
          • 1.表格记录编制人,审核人,审批人2.版本修订记录3.目录4.编写目的对软件测试结果进行整理和汇总,形成正式的测试文档。为软件单元评审验收提供依。软件产品配置管理库。5.软件描述描述测试单元与相关单元的产品项目名称,所需子系统,但愿要完成的功能,需求和设计要求等。6.软件单元的描述了解本单元的组织结构图,包括本单元包括的数学、方法、输入、输出等。7.根据本单元的控制结构或操作时序,画出大概过程。8.测试过程根据所做的软件功能,逐一进行测试。在表格中列出代码审查中查出的问题(标明BUG—ID,审查人员、审查日期、问题描述)测试用例结果统计表:(测试项、测试用例号、测试特性、用例描述、测试结果,对...
            0 0 1402
            分享
          • 摘要:在实际项目中,抛开产品需求的质量不说,但就研发质量保证而言,测试人员在测试阶段发现大量的实现类bug,每天拉着开发人员修bug;要么在临近上线的时候,发现了一个重大问题,导致修复验证时间不够,但又只能“硬着头皮”上线。解决这些问题的方法或许多种多样,但这里来聊聊如何使用研发质量保证前置来尽可能避开这些问题。关键词:研发质量,质量保证前置,尽早暴露问题,上线风险背景在实际项目中,抛开产品需求的质量不说,但在研发质量保证上面,测试人员往往需要时不时的面对不少头痛的情况:开发团队来了一个新人,本来需求量不大,但测试人员在测试时发现连主流程都跑不通,无法走下去;这次有一个从零起步的大项目,涉及多...
            0 1 2834
            分享
          • 我如何接触到的 Apifox今年三四月份的时候,公司已经上线的项目,发现有部分接口存在重复提交的情况,接口也没做好幂等,导致数据库落下了大量重复数据,于是我就开始优化接口,加了redis分布式锁和一些防重校验,好了,背景介绍完毕。锁是加上了,但是吧,要想测试就需要模拟压测环境,这个时候如果完全依赖测试同事,很显然不是我的风格,本着宁可麻烦自己也不麻烦别人的原则(减少扯皮,节省时间),于是想要自己做并发测试,看一看锁有没有效果。刚开始先想到了JMeter,毕竟也在测试那多多少少了解过,但是当我安装完准备使用的时候,发现配置很复杂,即使我叫来了测试同事,也很难讲的明白,于是乎我就在网上搜索的时候,...
            0 0 990
            分享
          • 1、移动端性能监测的主要途径移动端性能监测的主要途径有三种:一是开发工具自带的监测工具,例如xcode自带的instrument,Android studio自带的Android monitor;二是使用第三方SDK;三是自行开发检测代码。三种途径各有利弊。开发工具自带的监测工具,包含了很多强大的监测功能,且持续迭代更新,使用方便,为开发阶段的性能测试提供强有力的支持。但是只能在开发工具内部使用,不能独立使用在其他产品周期内。专门用于性能监测和用户行为、属性分析的第三方SDK,比如Bugly,OneAPM,听云,Firebase,把它们接入项目可以进行性能监测,这些第三方的工具工作原...
            0 2 3791
            分享
      • 51testing软件测试圈微信