安装项目
- 安装phpstudy
- 将tpshop项目复制到www的目录下
- 启动phpstydy
- 在浏览器输入127.0.0.1、install 看到这个页面代表安装成功
- 浏览器输入127.0.0.1回车,打开商城首页 输入127.0.0.1/admin进入管理员界面
熟悉项目步骤
- 了解项目业务特性
- 了解项目的用户
- 了解项目的模块
- 了解项目的技术栈
熟悉项目的信息来源
- 项目中已经存在的文档:需求说明书,用户使用手册,测试用例
- 使用项目的现有环境
- 询问项目中的其他成员
项目的业务特性
- tpshop是一个开源电商系统
项目的角色管理
项目模块
- 也叫子系统
- 了解项目有多少模块,以及由多少子模块,模块和模块之间的关系
- 一般到模块的具体功能项,就不用再细分了
需求评审
什么是软件需求
用户解决某一问题或达到某一目标所需的软件功能
什么是需求评审
项目相关人员就软甲需求进行确认评估的相关活动
目的
- 保证需求说明书的完整性
- 保证项目团队对需求的理解达成一致
需求评审的形式
- 会议
- 参会人员:产品、开发、测试、ui
- 职责 - 确认自己对需求要有清晰的理解,没有疑惑- 确认需求文档完整,准确,能购指导后续工作- 对需求中不合格的地方提出修改意见
测试计划与测试方案
测试计划
- 明确测试目的与规范
- 执行计划的角色与职责
- 测试任务的进度和资源分配
- 风险的评估与应急计划
- 测试的准入准出标准
测试方案
- 测试的策略
- 测试的化境规划
- 测试工具的设计和选择
回复tpshop数据
- 把tpshop相关的数据库全部删除
- 到tpshop的安装目录下
phpstudy\www/install
- 删除install.lock
- 打开浏览器 127.0.0.1/install重新下载
编写测试用例基本要求
1.测试用例需求来源
- 需求说明书,产品原型图,UI设计图
- 2.站在用户的角度,测试软件的可用性
2.测试用例的设计步骤
- 需求分析
- 整理测试点----可以使用xmind 测试点是测试中需要关注的具体功能 测试点的作用是用来擦hi分需求,辅助白那些测试用例
- 编写测试用例
3.编写测试用例的原则
- 能看懂----确保每个用例同粗移动
- 能执行----测试用例清晰准确,用例中每个步骤都是可执行的
4.测试结果的几种状态说明
- pass----通过
- fail----失败
- block----阻塞
- N/A----忽略
5.执行测试用例原则
- 严格按照测试用例书写的步骤执行
- 失败的用例,及时提交缺陷报告
功能测试与抓包工具
抓包(packet capture)就是将网络传输发送与接受的数据包进行解惑、重发、编辑、转存等操作,也用来检查网络安全,抓包也经常被用来进行数据截取等。
功能测试用到抓包工具的场景
- 通过抓包工具截取观察网站的请求信息,帮助我们更深入得了解网站
- 通过用抓包工具截取、观察网站的请求与返回信息,帮助我们进行BUG定位与描述
- 通过抓包工具拦截修改请求信息,绕过界面的限制,测试服务端的功能
HTML和HTTP
HTML—超文本标记语言
HTML:是英文 HyperText Markup Language 的缩写,又叫做超文本标记语言。其中:
超文本:就是指可以包含图片、链接,甚至音乐、程序等非文字元素
标记:就是通过**<标记符>内容</标记符>**的格式让内容具有不同的表现形式,从而达到超文本的目的。
我们在互联网上浏览的网页,本质上就是超级文本标记语言。
HTML示例
<h1>这是一个超文本的示例</h1><imgsrc='http://www.itheima.com/images/logo.png'></img>
HTTP—超文本传输协议
HTTP:是英文 HyperText Transfer Protocol 的缩写,又叫做超文本传输协议,是最常用的协议之一。
HTTP示例
在我们日常浏览网页时,使用的就是HTTP协议,
HTTP请求与响应
HTTP 请求
简称请求,是指从客户端到服务器的请求消息
通俗地讲,就是用户希望从服务器得到什么样的信息?
以上图举例说明
用户在浏览器中输入要访问的网页地址 http://www.itheima.com
按下回车,浏览器会把请求以特定的方式发送给 www.itheima.com 服务器,请求得到 黑马程序员网站的首页的内
容
客户端向服务器提的请求,就是HTTP 请求
HTTP 响应
简称响应,是指从服务器返回给客户端的请求结果
通俗地讲,用户只有获取到服务器的请求结果之后,才能够在浏览器中显示出来
以上图来举例说明:
服务器接收到用户请求后,把用户需要的数据内容,以特定的方式传递给客户端
客户端接收到数据之后,把最终结果显示在浏览器中
服务器返回给客户端的数据结果,就是HTTP 响应
HTTP请求和响应的内容
HTTP请求和响应的内容各自包括三个部分
HTTP 请求内容
在一个完整的 HTTP 请求中,除了包含要访问的网页地址外,通常还会包含以下内容:
- 用户使用的浏览器类型,如:Chrome、Firefox、IE 等
- 用户的浏览器支持的语言,如:中文还是英文 …… 注:这些额外的请求信息,都是在 HTTP 中规定好的
HTTP响应内容
在一个完整的 HTTP 响应中,除了包含被访问的网页内容外,通常还会包含以下内容:
- 状态码 用数字表示的响应状态,最常见的有: 200 :表示成功 3xx :表示数据路径发生改变—>重定向 302,304 4xx :表示客户端问题,404表示页面没找到,403表示访问的数据被禁止 5xx :表示服务器错误
- 响应数据的长度,通常返回的数据内容越多,用户等待时间越长
- 响应数据的类型,除了可以返回网页数据外还可以返回:图片、文字、音乐、视频… 注:这些额外的响应信息,也是在 HTTP 中规定好的
非功能测试
项目阶段前面的内容都是基于我们项目的功能展开的测试,比如测试单个功能点,或者是多个功能的组合,项目测试除了要考虑功能方面的测试,还要考虑非功能的测试
主要包括
- 兼容性测试
- 界面测试
- 易用性测试
- 性能测试
- 安全性测试
非功能性测试–兼容性测试
兼容性指软件对不同平台,不同环境,不同分别率的适应能力。
应用场景
什么时候考虑?
项目要求在不同的操作系统、不同浏览器、不同的平台、不同分辨率下操作时
关注点
- OS - 不同的操作系统:Windows、Linux、mac等- 相同的操作系统不同的版本:win7、win8、win10
- Browser(浏览器) - 不同的浏览器:三大主流—IE、Chrome、Firefox- 相同的浏览器不同的版本:IE—IE8、IE9、IE11 可以通过F12开发人员工具选择IE版本;- 其他常用的浏览器,如:搜狗、360 注意不同的版本:高速模式(Chrome)、兼容模式(IE)
- 分辨率(补充内容)
非功能测试—界面测试
界面测试,或称UI测试,测试用户界面的功能模块的布局是否合理、整体风格是否一致、各个控件的放置位置是否
符合客户使用习惯。
如何做界面测试?
- 一般情况,直接依据产品原型图以及UI效果图,进行对比验证,确认一致
- 如果没有原型图和UI效果图,可以通过一下几个方面考虑 - 导航测试- 图形测试- 内容测试- 整体界面风格测试
非功能测试—易用性
易用性测试是指用户使用软件时是否感觉方便。简单说就是:易懂、易学、易用、吸引人。
关注点
项目难易程度
适用人群
用户的计算机水平
非功能测试—性能测试
性能测试是通过测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
什么时候考虑性能测试?
- 对软件的性能有要求
- 用户量大的项目
性能测试的目的
- 验证软件系统是否能够达到预期的性能指标
- 发现软件系统中存在的性能瓶颈,以便优化软件
- 验证稳定性:在一个生产的负荷下测试一定的时间,评估系统的稳定性是否满足要求
非功能测试—安全性
安全性
- 什么时候考虑? 功能模块涉及到用户隐私信息,人身,财产安全等情况。
关注点:
安全性:登录时密码是否进行加密以及密码是否容易破解
SQL注入:攻击者把SQL语句作为参数传入web应用程序,最终达到欺骗服务器执行恶意的SQL语句
示例—tpshop登录密码被加密
tpshop数据库中用户表tp_users的信息
编写测试报告
测试报告是指把测试的过程和结果写成文档,对发现的问题和缺陷进行分析,为纠正软件的存在的质量问题提供依
据,同时为软件验收和交付打下基础。
测试报告是测试阶段最后的文档产出物。
一份详细的测试报告包含足够的信息,包括产品质量和测试过程的评价。对于测试的意义
测试结束的一个标志
形成一份可以参考的材料(依据) 对
于整个测试过程或设计方法的一些建议(也就是需要改进的地方)对于整个项目及团队的意义 把关 预防 报告 改进
测试报告的主要内容
- 测试工作的经过与结果
- 风险评估
- 缺陷汇总与分析
- 测试工作总结与改进
版权归原作者 Vanellope. 所有, 如有侵权,请联系我们删除。