软件测试-测试前言(1)
软件测试介绍
初级测试
- 负责生命周期各阶段对应测试;
- 独立设计和执行测试方案和测试用例;
- 进行设备搭建和维护测试环境;
- 协助开发人员快速重现和解决产品BUG;
- 负责测试文档的撰写;
自动化测试
- 对持续集成、持续交付、自动化测试等技术进行研究、测试实践、手册撰写;
- 对核心技术产品进行自动化测试;
- 负责与直属领导及其他技术研究员及时交流持续集成、持续交付、自动化测试研究、实践过程中的问题及成果;
- 负责根据需求说明、设计文档来分析测试内容、确定测试方法、设计测试用例、编写测试脚本、执行测试,并编写测试报告;
- 负责搭建、维护技术研究、测试所需的环境;
测试开发
- 具备3年以上开发/测试
- 精通自动化测试常用工具(如monkeyrunner,appium,selenium等)
- 掌握PHP/JAVA/C/C++或几种脚本语言如python/shell 等,能熟练编写代码
- 精通软件测试理论和方法,熟悉互联网行业测试环境及相关技术
- 熟悉Linux/Unix操作系统
- 善于学习和运用新知识,具有良好的分析和解决问题能力
- 在web、android、ios,接口等自动化领领域有较深的造诣和见解
- 能够独立使用php/java/python独立进行web开发
- 有相关自动化工具/平台(web/app/api接口/测试相关平台工具)开发经验或者二次开发经验者优先。
功能测试安排
软件是计算机系统中依赖于硬件运转的一部分,包括程序代码
、数据存储
与相关文档
的集合。
软件特性
形态特性:
软件是看不见、摸不着的逻辑体。现实生活的度量单位尺寸、物理特性、化学成文对软件毫无意义。
智能特性:
软件是很复杂的,是人类通过大量的脑力计算开发出的脑力产品,软件本身体现了知识的实战经验以及人的思维情感。
质量特性:
软件是由人为编写,尚未实现完全自动化,依然包含不少个人行为与个人因素,因此不存在没有缺陷的软件。
环境特性:
软件的开发和运行都离不开计算机系统,包括支持它开发和运行的相关硬件与软件。
比如你热爱玩王者荣耀,但是只能依赖于安卓、IOS系统运行,你放到windows上是没法玩的。
维护特性:
软件投入生产后后续还需维护,但不同于传统产品,在升级、优化、更新等方面,软件毕竟是计算机程序的逻辑体,甚至可以全盘重构。
废弃特性:
与硬件不同的是,硬件如手机、电脑被废弃,如今社会大多是因为硬件的配置跟不上软件的更新,出现卡顿,模糊等问题,较少是因为硬件坏了才废弃。
而软件是坏不了的,只因软件会由于技术的更新,产品的更新,被主流淘汰而废弃。例如我们还有人使用苹果手机IOS6的系统,如今已经更新到IOS12了,但是并不影响你正常使用。
应用特性:
软件应用极为广泛,遍布人民的日常生活,想想你一整天与软件都有哪些打交道….
起床的闹钟app-> 房间的密码锁-> 地铁一卡通-> 学英语、读书手机app-> 摩拜共享单车app-> 进公司打开电脑-> 咖啡机研磨一杯卡布奇诺-> 开始美好的一天…
软件分类
系统软件
系统软件是负责控制计算机系统中各种独立的硬件,使得协调工作的软件。
- 服务性程序:错误诊断工具、控制面板、设备管理器
- 语言程序:编译型程序、解释性程序
- 操作系统
- 数据库
- 网络管理
应用软件
应用软件是为了某种特定的用途而开发的软件,例如网上冲浪的浏览器、QQ、微信,办公软件Word、Excel、PPT等等。