工具总结

网站兼容性测试工具:multibrowser

Cookie工具:iecookiesview

超链接工具:xneuhttp link validor

http协议的请求相应抓包工具:httpdebugger pro

服务器:tomcat

安全测试工具:nmap(主机端口服务os等嗅探),scrawlrsql注入工具)

性能测试工具:abjmeterlrqtp,百度统计和排名www.alexa.cn网站

 

Web:通过浏览器访问服务器, B/S 架构

Web技术学校网站:www.3cschool.com.cn

安装apache,不要有中文和空格在路径中,httpdconf文件中设置端口号;工程要部署在htdocs文件夹下;

 

Web的地址:域名,需阿里云购买,阿里云还可以购买服务器,还有很多其他网站可以购买域名和服务器。域名与服务器是映射关系,一个域名可以对应多个服务器,一个服务器也可以对应多个域名。云服务器一般是centos,远程访问去部署服务器,

 

开关网络服务:service httpd start, service httpd stop, service httpd restart,

查看端口:lsof –i:80

 

Web应用架构:浏览器,web服务器,应用服务器,数据库,存储设备

大型的web应用,如天猫淘宝双11,用LB 负载均衡,将请求可以均衡到不同的服务器;

 

技能:安装apache,部署web工程,查看网页源码F12

 

Cookie 名称,值,超期时间

 

Web测试:两大板块,五大技术领域;

两大板块:UI测试,如门户,业务测试如电商,

五大技术领域:功能,自动化,性能,接口,安全;

 

UI测试:外观及用户交互部分的测试,包含:

   页面布局,文字内容及大小,滚动条,对其他语言的支持,tab翻页,各种链接有效,

   图片:大小,清晰,含义正确,链接有效正确,风格一致,按含义合理分类布局,颜色搭配合理,图片无法显示时容错处理,提示信息错误;

   内容测试:价格,符号,语法,拼写,逻辑,习惯做法,

   浏览器兼容性测试:

   表单测试:登录注册,查询,订购,信息记录,背后就是在对数据库进行增删改查。

            提交重置,邮件联系---邮箱登记,数量负数、小数、特殊符号、上限、非数字----错误提示,页面的右键功能,添加----非空、相应输入框控制,批量操作,翻页操作,

 验证码测试:大小位置,刷新,点击,错误提示,大小写,显示速度,完整性,更换速度,

 

 整体思考测试点,反向思考测试点,

Cookie测试:存储用户访问网页的信息记录,下次访问网页会根据用户历史记录提供特定内容给用户,

   有的网站要求一定要用cookie,那么就要测试不同cookie设置下网站是否正常使用,一般情况下即使cookie设置高,不能影响网站的使用,最好是有相应提示;

   Cookie设置:工具—internet选项隐私选择internet区域设置,高是禁用

   删除cookie:工具—internet选项常规浏览历史记录删除cookie

   Cookie有效期:过了就重新开始;

   Cookie与电脑缓存的区别:电脑缓存包含了浏览器缓存和程序缓存,cookie是浏览器缓存的一部分,cookie是服务器主动推送给浏览器的信息,其他浏览器缓存是浏览器主动保存服务器的图片等信息;

工具:iecookiesview

 

超链接测试:

是否可以打开,链接地址是否正确,打开是否速度正常等等;

Xenu:免费,适用有下载的链接,只能对已经部署的超链接进行测试,缺点不判断下载文件是否正确,

     Options设置线程及链接层级及报告内容,

Html linkvalidator:收费,特点是对没有部署的页面也对超链接进行测试,即可测试本机的文件夹里的链接,也可以测试网站上的超链接,绿的是通过的,红色有问题,×××等待测试,report菜单生成报告;这个软件200多块钱

 

http协议详解:

dns原理:浏览器访问服务器的详细过程,客户端提出域名请求后,客户端的dns服务器先查本地dns缓存和host文件将网址翻译成IP地址,找不到就查省dns服务器缓存,不行就到全国dns,再找不到就到全球dns去查直到找到为止;

          dns缓存记录的就是域名与ip的对应关系,dns服务端口53

           Localhost对应的IP就是127.0.0.1

http协议是请求/响应协议:就是一问一答的方式,简单快速灵活无连接无状态,

        请求:getheadpost,请求行,消息报头,请求正文,

        Get 获取查询资源信息

GET目录 ?参数1&参数2/版本

              Host:请求发给的服务器

              操作系统版本;

              连接状态connectionkeep alive 保活

         Post:向指定资源提交数据处理的请求;

        Getpost的区别:get的消息放在协议头,在网址的地址栏可以看到,且不能超过255个字符否则被切断,而post是放内容在消息体里面,数据大小无限制,故postget安全,getpost简单快速;

   测试点:账号密码的输入框就不能用get方法,要用post方法,否则get方法会把账号密码显示在地址栏里面从而被记录;

   测试需了解知识点:前端,后端,协议,接口,web服务器,性能测试工具,

   Http协议工具: http debuggerpro6.2 ,显示网站的requestresponse,定位分析问题,注意适时停止抓包,不然系统死掉

    https是加密的,比http安全。

   页面响应码:100-199:收到请求,需继续处理

200—299服务器成功接收并处理完成,

300-399,客户端请求的资源已经到了其他地址,并告诉此地址;

400-499:表示客户端的请求有错误

500-599,表示服务端出现错误

常见:200成功,302跳转,400客户端预防错误,403,服务器拒绝服务,404请求的资源不存在,500服务器发送错误

 

Tomcat安装:

Path是给cmd命令使用的默认环境路径,指到到bin

Java-home是给tomcat使用的默认环境路径,指到java版本文件夹即可;

环境设置:用户,只对该用户有效,系统设置:对所有用户有效;

先装jdk,把jdk的安装路径给java-homepath环境变量,再装tomcat

Tomcatmonitor设置一下控制台,

Tomcat目录:bin启动文件夹,conf配置文件夹:server端口名字部署位置是webappslib第三方库文件夹,logs主要看localhost本机日志,localhost-access前端访问日志,

部署:安装tomcat,将网站内容部署在webapps中,将数据库内容部署在programdatamysqldata中,设置tomcatweb-info-class文件中的config文件的数据库驱动路径及账号密码,重启tomcatmysql服务,

 

Web问题定位分析(问题排查)

  1. 网址是否错误,拼写端口

  2. 网络是否连通,ping命令,服务是否启动;

  3. 端口是否被占用:netstat –ano|findstr 8080

  4. 查看日志

 

Web性能测试

与压力测试区别,测试目的不一样,性能是为了确定在一定负荷下运行速度等性能指标是否符合要求,压力是为了测试得出最大负载能力,

性能环境要求及结果指标:用户量,cpu占用率,内存,用户响应时间

快速解决:换硬件

 

并发用户数据:系统注册用户数(游客不算),在线用户数(注册,登录和游客),并发用户数是对系统产生压力的用户数量;

严格并发,非严格并发,

请求响应时间:=网络传输时间+服务器处理时间+前端响应时间

事务响应时间:

吞吐量:服务器处理的总数据量,

吞吐率:一秒时间内服务器处理的数据量,

TPS:根据业务来分的,一秒内服务器处理交易或事务的数据量,重要指标,

     思考时间,是用来模拟用户操作时消耗的时间

点击率:每秒用户点击次数,

Pvpage view一个网友的浏览量,

Uvunique visit独立电脑客户端访问量,一天内多次登录只能算作一次,

Ip:一天内同一ip只被计算一次

网站排名:www.alexa.cn   里面有PVuvip等统计,对公网统计,

百度统计:可以统计目标网站的访问情况,注册后新增一个网页,获得代码加入到网页的</head>标签中,与百度统计建立关系进行统计,

RPS:每秒相应请求数,场景:当很多请求并发的时候,新增的请求能否得到响应,

 

Apache  ab 开源,简单,运营使用,安装了apachehttpd,里面自带

LR并发量收费,

Apache Jmeter,开源,(简单的性能和自动化测试)

   要预先安装JDK,再安装linux版本的jmeter,打开binjmeter.bat直接执行

   Linux下要先在windows下创建测试计划生产jmx文件传到linux执行

   CPU的测试,多电脑测试TDtest driver

   性能测试流程:性能测试规划(人员,时间)-—环境搭建工具选择创建

   jmeter测试计划(网址协议线程数监控器)---按场景实施测试计划分析及报告

   Jmeter功能组件:线程组,sample,配置组件,逻辑控制组件,前置后置控制器,定时器,断言,监控与报告

   介绍:

   Sample:动作型元素,根据协议,beanshell sample自己写动作, http是进行网页网站测试,soap接口测试,

  逻辑控制器:运行一次还是多次,循环一次还是多次,固定控制器(思考时间),操作逻辑的控制;

  配置控制器:配置网址,端口等;

  断言:将得到的结果与预期比对,从而发现和定位问题,常用响应断言

  监控组:聚合报格,查看结果树,

  不支持同时两个测试计划运行

  组件的作用域:放在线程组上面则时全局作用域,如果在某组件下面则作用域只在此组件内,

  Jmeter脚本录制与回放:badboy,自带录制功能(创建一个代理)

  Jmeter创建代理:先在工作台上添加一个代理服务器,在internet选项链接代理服务器:127.0.0.1,8090jmeter工作台中启动代理,cmd查端口监听;

  将代理器的目标控制器改成测试计划线程组,就可以在线程组里录制一个网页登录过程。

 

Web安全测试

  1. 防范被破解密码:

Web系统的账号密码不要太容易猜,linux/unixrootwindowsadmin,管理员账号密码禁止被登录,登录后再切换到管理员账号,

Ssh服务器如何禁止管理员登录?

密码复杂度:大小写,字母数字组合,不少于8个字符等规则,

连续3次输错密码锁定30分钟;

  1. 内部安全:服务器机房监控、出入登记、防静电处理、服务器密码动态管理,

  2. 安全需求:防止危险状态的措施:root用户不能远程登录服务器只能普通用户登录后切换root,或者屏蔽哪些ip段;

  3. 安全设计:加密算法,安全架构,容错,冗余

  4. 方法:功能安全性验证,漏洞扫描(nmapSql注入),模拟攻击(发数据包或猜密码),

  5. Web安全组织:wascweb安全威胁分类,

  6. 常见web安全(百度解决办法):

桌面漏洞:windowslinux操作系统漏洞

服务漏洞:apachetomcat服务器漏洞,

Web服务器虚拟托管:阿里云服务器,http代理服务器,

网页内可嵌入对象,

密码过于简单

移动网站的破解插件

×××攻击:

SQL注入:将sql输入截获并处理(对输入数据做限制)scrawlr

Nmaplinux下网络扫描和嗅探工具,用以评估网络系统安全(在线主机,操作系统,端口,服务)

多浏览器测试:multibrowser,支持主流浏览器并可进行对比,