2020-12-14

计算机语言
前端:html,css,js
后端:java,c#,python

软件:程序,数据,文档的集合。
程序:可完成指定功能和性能的可执行的指令序列
数据:

软件分类:
系统软件(硬件上windows,mini,max。)
支持软件(为更方便操作计算机)操作系统进行控制类(界面工具,计算机管理类),开发应用软件类(软件开发工具,软件评测工具,数据库管理系统等)
应用软件:科学计算,文字图像处理,游戏类。

单机版软件(不会和其他计算机交互)
分布式软件:需要多台计算机进行协同工作软件

软件的特点:
逻辑实体,具有抽象性。
软件产品生产主要是研制,生产成本主要在开发和研制,开发研制完成后,通过复制就可以产生大量产品。
软件不会磨损,老化。
软件对硬件和环境有要求(如64位与32位系统,win和max系统出现不可兼容问题)
软件没离开手工作坊式研发,生产效率低
软件很复杂,会越来越复杂
软件成本很贵

软件危机和软件工程
软件危机:软件开发和维护遇到的一系列严重问题。
如何开发满足更多需求的软件
如何维护数量不断膨胀的软件产品。

软件测试产生与概念
软件测试产生原因:1代码规模过大,2程序结构和算法更加复杂,3程序模块间接口增多

软件测试目的:在用户需求和开发技术内涵取一个平衡点
程序员关注:设计需求,技术内涵
用户关注:自身需求

测试软件的意义:工作量上解放程序员和售后服务人员
降低软件质量风险,使程序员能专心解决程序算法和效率,同时经过严格检验的完整产品减轻了售后服务人员的工作量。

软件测试工程推动了软件工程的发展,是软件质量获得阶段性的提升。

软件测试:对软件产品阶段性的工作成果进行质量检测
目的:为了海岸错误而执行程序的过程
关心程序的效率和鲁棒性(适应各种变化的能力)等因素
检验软件是否满足规定的需求弄清与预期作用差异

软件测试定义:使用人工或自动的手段,来运行或测试某个系统的过程,目的是检测它是否满足规定的需求,和实际结果的差别。

测试的目的:
确保产品具备它承诺的功能,用户可以访问的功能都有明确的书面说明
确保满足性能和效率要求
确保产品是健壮的和适应用户环境的

软件测试原则:
软件测试应该尽早地执行,
软件测试应贯穿整个软件生命周期
软件测试应追溯需求(需求说明书是评判软件bug的标准)
测试应该由第三方来构造
穷举测试是不可能的,应遵循Good-enough原则(即不做过多测试,也不做不充分测试,制定最低测试通过标准和测试内容,然后具体问题具体分析)
必须确定预期输出:设计测试用例(或其他测试内容),必须先给出预期测试结果,再作为检验测试结果的基准。
必须彻底检查每个测试结果(不同模块,即不同开发者的缺陷,要分别提交,分别处理。相似缺陷报告容易被作为重复的缺陷报告被剔除。一个缺陷被两个人提交,却被认为是对方跟踪,结果两个人都不跟踪)
充分注意测试中的集群现象:测试后程序中残存的错误数目和与该程序已发现的错误数目很可能成正比。
其他的规律与经验:
缺陷的二八定理
严格执行测试计划,排除测试的随意性。
注意合法合理的输入,也要注意非法的非预期的输入
检查程序是否做了不该做的
测试应从小规模开始,逐步转向大规模
发放诺夫使用同样的测试会使得软件具备抵抗力
关注缺陷修复
测试活动依赖于测试背景)

不同阶段引入的缺陷与相对修复费用
需求阶段 1 (此阶段缺陷最多)
{ 设计做的事情参与评审·审核相关文档(说明书,需求文档,程序设计文档)}
设计阶段 5 (此阶段缺陷较多)
编码阶段 10
单元测试阶段 20
验收阶段 50
维护阶段 200

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值