一、开发模式
1.线性模型:最常见的“瀑布模型”,基础框架,但缺点在于“集成之日就是爆炸之日”。(立项分析- 需求分析-设计-编码-测试-维护)很多企业使用迭代进行修改。
2.渐进式模型:最常见的“螺旋模型”,(需求分析-风险分析-设计、编码-测试、评审),迭代开发 和增量开发模式。
迭代:反复求精的过程,先整体再细化增量:逐块增加,一部分一部分来
注意:每一次迭代原型出来后,测试人员都需要从原型界面,系统主要功能,性能等方面对原型进行评审。
二、生命周期模型
1.边做边改模型
2.瀑布模型
3.原型化模型
4.增量模型
5.螺旋模型
6.V模型(重点)
优点:
每一个阶段都清晰明了,便于控制开发的每一个过程。既包含单元测试又包含系统测试。
缺点:
测试介入的比较晚,对于前期的一些缺陷无从发现和修改。测试和开发串行。
7.W模型(重点)
优点:
测试伴随着软件的整个生命周期,例如,在需求分析结束后就可以进行需求分析测试。测试于开发是并行独立进行的。
缺点:(现实中很多公司没有文档)
对有些项目,开发过程中根本没有文档产生,故W模型无法使用。 对于需求和设计的测试技术要求很高,实践起来很困难。
三、软件测试工具
软件测试工具分为自动化软件测试工具和测试管理(禅道)工具。
软件测试工具存在的价值是为了提高测试效率,用软件来代替一些人工输入。测试管理工具是为了复用测试用例,提高软件测试的价值。
1.Bug管理工具:禅道 ,Jira(付费),Trac,gitlab
2.自动化:python+ selenium,python+ appnium(UI自动化),pytest,unites,Junit (测试用例 单元测试),innerHtml(发送测试报告)
3.接口自动化:requests+python+allure
4.性能测试工具:jmeter,Loadrunner
5.抓包工具:Fiddler,charles (弱网测试的)
6.接口工具:postman,jmeter
7.录制脚本:badboy,jmeter
8.云测:腾讯云(模拟不同的移动端或者是web浏览器)
9.命令:Linux,adb,monkey
10.数据库:mysql,oracle,redis
11.语言:python,java,c,c++
四、RD、PM、QA、OP英文缩写
1.RD:研发工程师(开发)
2.PM:产品经理(管理者,筹划项目)
3.QA:品质保证(相当于测试)
4.OP:操作员,管理员(维护系统)



