软件测试基础包括哪些?
说到软件测试基础,其实大部分都是偏向于软件测试的理论知识;比如说,什么是开发模型,各有哪些,什么是测试模型,各有哪些;什么是白盒测试,黑盒测试,什么是灰盒测试…这儿就简单的介绍一下;
软件的从0到1
你想要测试一个东西,你得了解它!!!这儿是重点,圈起来要考。那么一个软件(产品)如何从0到1的,它经历了哪些过程??
正常的一个软件从0到1得经历以下阶段:
1.产品的需求收集采集阶段;
一个软件,肯定是为了解决一个问题而诞生的;比如说,微信,它是为了解决人与人之间互相通讯而诞生的产品(至于后面的朋友圈,支付,都是后期功能),那么,微信最初就是为了解决此类问题而诞生的产品;—这类的活,现如今公司体系不庞大的情况下,都是产品的活,这类需求来自需求方(可能是市场调研,可能是甲方爸爸…)
2.产品立项与需求确认;
需求收集好后,产品:来吧,各位大佬,咱们来碰一下,谈谈这些需求实现困难吗?好实现吗?如何实现?
产品把收集的需求大概说一下,然后项目经理探讨下,用什么技术(语言,架构,服务器)实现;没问题就正式立项了;然后项目经理就会把team组建起来;
3.需求评审
因为已经立项,确定了可行性了;这儿已经到了实施阶段了;产品经理会把之前得到的需求都整理成需求文档,然后出原型图;项目参与人(负责人)一起来开个需求评审会,这儿大家就把不明确,不明白的需求提出来,要确保三者统一,产品,开发,测试的理解统一,要不然后期会有很多问题;没问题了,就进行具体的项目开发了;
4.项目开发
各个部门拿到需求后,UI、开发(前后端)、测试都可以做准备了;UI拿到需求后,可以出高保证图了(一般为了服务前端开发);前、后端架构师准备架构、开发框架等(一般都是用老的框架),测试开始准备测试用例,这里涉及到测试的,就是用例;然后就是编码的过程;
5.测试阶段
当后端开发好后,大公司有专门的运维部署项目,小公司可能是开发,可能是测试负责人;部署好后,可以进行服务端测试了;也就是接口测试;然后前端开始集成接口,服务端测试后,就要进行前端页面测试了,测试过程中,会产生一系列问题或者缺陷,这儿就是令所有程序员讨厌的东西,BUG!!!
6.项目上线
测试通过之后,就出具测试报告;通知项目负责人,产品负责人,已经运维负责人,安排项目上线;也就把开发好的软件部署到服务器上;
7.产品迭代
在客户使用过程中,因为出现问题,或者客户有新需求,比如微信,最初就没有现如今这么多功能,都是通过后期的迭代才加进去的;
总结
所以,身为一个合格的软件测试工程师,你这儿就要考虑你自己在整个项目中的工作内容了;总结一下几点
1.参加需求评审(理解需求,并提出需求中的不足)
2.编写测试用例(按照什么样的操作步骤去执行,这儿得用到用例编写的方法)
3.服务端测试(看不到用户界面,通过接口调用,实现功能)
4.界面(UI)测试 (有用户界面,直接模拟用户进行操作)
5.提交BUG
6.验证BUG(修改完你得重新测试一下,看看问题有没有解决完)
7.出具测试报告 (一般对整个产品评估,做一下具体的说明)