精是什么意思| 子衿是什么意思| 1905年是什么朝代| 晕车贴什么时候贴| 乸是什么意思| 皮肤瘙痒吃什么药| 肌酸什么时候喝| 圣水是什么| 甲状腺4b级是什么意思| 朱元璋为什么不传位给朱棣| 可见一斑是什么意思| 肠易激综合征是什么病| 来月经为什么会拉肚子| 感冒咳嗽吃什么药止咳效果好| 格格是什么意思| 孕妇适合吃什么食物| 耳鸣是什么原因引起的| 血管瘤挂什么科比较好| 梦见杀鸡是什么预兆| 什么样的人不适合吃人参| 跌打损伤用什么药好得快| 死有余辜是什么意思| 拂是什么生肖| 肺结节是什么| ipada1474是什么型号| 金蝉子是什么佛| 梦见和别人打架是什么意思| 甘油是什么东西| 刚满月的小狗吃什么| kailas是什么牌子| naco是什么牌子| 医学上pi是什么意思| 立冬吃什么| 韧带是什么| 信奥是什么| 什么菜养胃| 阴影是什么意思| 玻璃心什么意思| 大学有什么专业适合女生| 7月12日什么星座| 脸无缘无故的肿是什么原因| 补气血用什么泡水喝| 为什么会得骨癌| 焦糖是什么糖| 梦见打苍蝇是什么意思| nb什么意思| 额头发黑是什么原因| 胪是什么意思| 失去理智什么意思| 辅弼是什么意思| 有什么好用的vpn| 输尿管结石挂什么科| 什么地吃| 为什么会得子宫腺肌症| 血是什么颜色| 排卵期会有什么症状| 枸杞和红枣泡水喝有什么好处| 梦见橘子是什么意思| 什么是痉挛| 坐月子吃什么下奶最快最多最有效| 246是什么意思| 怎么知道自己缺什么五行| 985大学什么意思| 1996年属鼠五行属什么| 为什么会有血管瘤| 窝沟封闭什么意思| 五彩的什么| 扪及是什么意思| 波长是什么| 打无痛对身体有什么影响吗| 缺钙吃什么补得最快| 什么药可以当饭吃| 落幕是什么意思| 梦见别人搬家预示什么| 身体透支是什么意思| 1958年属什么| 夜盲症是什么症状| 普罗帕酮又叫什么| 农历10月14日是什么星座| 股癣用什么药膏效果最好| quake是什么意思| 新陈代谢慢吃什么药| 腐竹配什么菜炒好吃| 清肺火肺热吃什么药最有效| 肠癌吃什么好| 刚怀孕有什么症状| medicine什么意思| f是什么| 姨妈期吃什么水果| 吃什么补维生素d| 刘禅属什么生肖| 有小肚子是什么原因| 光明磊落是什么生肖| 黄金有什么作用与功效| 黄芪什么时候种植| 荡漾什么意思| 定增是什么意思| 熊人是什么意思| 胃不舒服喝什么| 可谓是什么意思| 今天出生的男宝宝取什么名字好| 中国的八大菜系是什么| 燥热是什么意思| 鄂尔多斯为什么叫鬼城| 腰痛宁为什么晚上吃| 总是放屁是什么原因引起的| 肾结石吃什么比较好| 京东pop是什么意思| 减肥可以吃什么菜| 糖代谢增高是什么意思| 银杏叶是什么颜色| 奥运五环代表什么| 好马不吃回头草什么意思| 夏天的诗句有什么| 52什么意思| 小孩头晕是什么原因| 阳阴阳是什么卦| 什么药可以推迟月经| 什么是慰安妇| 宝齐莱算什么档次的表| 哀怨是什么意思| 是什么样的| 中线是什么| 夏天适合种什么菜| 大便拉不出来吃什么药| 恻隐之心什么意思| 双子后面是什么星座| 95年的属什么| 月经前几天是什么期| 梦见朋友怀孕了是什么意思| 左边脸长痘痘是什么原因| 咽炎要注意什么饮食| 费心是什么意思| 低压偏高是什么原因| 囊是什么结构| 通草是什么| 一直打嗝是什么原因引起的| 仙人是什么生肖| 屏风是什么| 睡觉打呼噜是什么原因| 醒酒最快的方法是什么| 解辣喝什么| 怀疑心梗做什么检查| 颅脑平扫是检查什么| 鼻尖长痘是什么原因| 火龙果是什么季节的水果| 羡慕不来是什么意思| 9月28号什么星座| 粽子叶是什么植物的叶子| 石斛不能和什么一起吃| 什么是承兑| 红枣为什么要炒黑再泡水喝| 声东击西什么意思| 为什么打死不吃骡子肉| 18k是什么金| 2001年属什么| 就绪是什么意思| 布洛芬起什么作用| 测血型挂什么科| 抗糖是什么意思| 西康省是现在什么地方| 胃胀痛什么原因| 幽门螺杆菌怕什么食物| 什么情况下吃救心丸| 穷搬家富挪坟是什么意思| 面包属于什么类食品| 痔疮是什么样子的| 包皮炎用什么药最有效| 天铁是什么| 大体重减肥做什么运动| 1月15号是什么星座| 盗墓笔记讲的是什么故事| 蚯蚓中药叫什么| 鸡汤放什么调料| 满月送孩子什么礼物好| 骨髓增生活跃是什么意思| md是什么学位| 吃什么改善睡眠| 何必是什么意思| 当枪使什么意思| 耳麦是什么| 猫癣传染人什么症状| 蹲不下去是什么原因| 睡意是什么意思| 手掌脱皮是什么原因| 高压氧舱治疗什么效果| 乏力是什么感觉| 什么叫腺肌瘤| 滑脉是什么意思| 女人做爱什么感觉| 改户口需要什么手续| 纠结是什么意思| p4是什么意思| 外阴白斑用什么药最好| 喝完酒胃疼吃什么药| 烟头属于什么垃圾| 女生胸部发育到什么年龄| 产后抑郁一般发生在产后什么时间| 什么能美白皮肤而且效果快| 什么的公园| 疱疹是什么病啊| 吃什么能让肠道蠕动快| 大摇大摆是什么生肖| 7月14日什么节日| trust阴性tppa阳性说明什么| 指尖脱皮是什么原因| 小腿浮肿是什么病| 百日咳是什么意思| 炎症用什么药最好| 排卵期是指什么时候| 头昏是什么原因引起的| 中耳炎是什么引起的| 什么软件可以开空调| 手足口病是什么症状| 81是什么意思| 面肌痉挛吃什么药效果好| 哪吒他妈叫什么名字| 玛瑙是什么材质| 什么是逻辑思维| 齁不住是什么意思| 貘是什么| cip是什么意思| 马上是什么意思| 中介什么意思| 死缓什么意思| 今夕何夕是什么意思| 熊猫属于什么科| george是什么牌子| ufo是什么| 万言万当不如一默是什么意思| 鹿晗的原名叫什么| 东方明珠什么时候亮灯| 滋阴是什么意思| fsa是什么意思| 晚上睡觉腿抽筋是什么原因| 圣女果是什么| 肺部肿瘤切除后吃什么| 什么时候同房最容易怀孕| 左侧卵巢内囊性回声是什么意思| 血清是什么| 弟妹是什么意思| 晚上右眼跳是什么预兆| 广西有什么市| twice是什么意思| 为什么不能空腹喝牛奶| 检查痛风挂什么科| 什么人不能吃苦瓜| 令坦是对方什么人的尊称| 器质性心脏病是什么意思| 云南白药草长什么样| 雷诺综合征是什么病| 什么是房补| 1月26号是什么星座| 枸杞和山楂泡水喝有什么功效| 梨状肌综合症吃什么药| 冷冻和冷藏有什么区别| 梦见大蒜是什么意思| 掏耳朵咳嗽是什么原因| 法令纹上的痣代表什么| 上海有什么好玩的地方旅游景点| 洋红色是什么颜色| 手指头麻木吃什么药| 肝郁化火是什么意思| 什么是伤官见官| 百度

新闻中心

EEPW首页 > 测试测量 > 软件测试的基础知识概要介绍[1]

——
作者: 时间:2025-08-04 来源: 收藏
一、概述
信息技术的飞速发展,使软件产品应用到社会的各个领域,软件产品的质量自然成为人们共同关注的焦点。不论软件的生产者还是软件的使用者,均生存在竞争的环境中,软件开发商为了占有市场,必须把产品质量作为企业的重要目标之一,以免在激烈的竞争中被淘汰出局。用户为了保证自己业务的顺利完成,当然希望选用优质的软件。质量不佳的软件产品不仅会使开发商的维护费用和用户的使用成本大幅增加,还可能产生其他的责任风险,造成公司信誉下降,继而冲击股票市场。在一些关键应用 (如民航订票系统、银行结算系统、证券交易系统、自动飞行控制软件、军事防御和核电站安全控制系统等) 中使用质量有问题的软件,还可能造成灾难性的后果。
软件危机曾经是软件界甚至整个计算机界最热门的话题。为了解决这场危机,软件从业人员、专家和学者做出了大量的努力。现在人们已经逐步认识到所谓的软件危机实际上仅是一种状况,那就是软件中有错误,正是这些错误导致了软件开发在成本、进度和质量上的失控。有错是软件的属性,而且是无法改变的,因为软件是由人来完成的,所有由人做的工作都不会是完美无缺的。问题在于我们如何去避免错误的产生和消除已经产生的错误,使程序中的错误密度达到尽可能低的程度。
给软件带来错误的原因很多,具体地说,主要有如下几点:
①、交流不够、交流上有误解或者根本不进行交流
在应用应该做什么或不应该做什么的细节(应用的需求)不清晰的情况下进行开发。
②、软件复杂性
图形用户界面(gui),客户/服务器结构,分布式应用,数据通信,超大型关系型数据库以及庞大的系统规模,使得软件及系统的复杂性呈指数增长,没有现代软件开发经验的人很难理解它。
③、程序设计错误
向所有的人一样,程序员也会出错。
④、需求变化
需求变化的影响是多方面的,客户可能不了解需求变化带来的影响,也可能知道但又不得不那么做。需求变化的后果可能是造成系统的重新设计,设计人员的日程的重新安排,已经完成的工作可能要重做或者完全抛弃,对其他项目产生影响,硬件需求可能要因此改变,等等。如果有许多小的改变或者一次大的变化,项目各部分之间已知或未知的依赖性可能会相互影响而导致更多问题的出现,需求改变带来的复杂性可能导致错误,还可能影响工程参与者的积极性。
⑤、时间压力
软件项目的日程表很难做到准确,很多时候需要预计和猜测。当最终期限迫近和关键时刻到来之际,错误也就跟着来了。
⑥、自负人更喜欢说:'没问题','这事情很容易','几个小时我就能拿出来'
太多不切实际的‘没问题’,结果只能是引入错误。
⑦、代码文档贫乏
贫乏或者差劲的文档使得代码维护和修改变的异常艰辛,其结果是带来许多错误。事实上,在许多机构并不鼓励其程序员为代码编写文档,也不鼓励程序员将代码写得清晰和容易理解,相反他们认为少写文档可以更快的进行编码,无法理解的代码更易于工作的保密(“写得艰难必定读的痛苦”)。
⑧、软件开发工具
可视化工具,类库,编译器,脚本工具,等等,它们常常会将自身的错误带到应用软件中。就象我们所知道的,没有良好的工程化作为基础,使用面向对象的技术只会使项目变得更复杂。
为了更好地解决这些问题,软件界做出了各种各样的努力。
 人们曾经认为更好的程序语言可以使我们摆脱这些困扰,这推动了程序设计语言的发展,更多的语言开始流行,为了使程序更易于理解开发了结构化程序设计语言,如pl/1,pascal等;为了解决实时多任务需求开发了结构化多任务程序设计语言,如modula,ada等;为了提高重用性开发了面向对象的程序设计语言,如simlasa等;为了避免产生不正确的需求理解,开发形式化描述语言,如hal/s等,这使得建立基于自然语言的描述成为可能,人们以形式化语言来描述需求;为了支持大型数据库应用,开发了可视化工具,如visual studio、power builder等。程序语言对提高软件生产效率起到了一定的积极作用,但它对整个软件质量尤其是可靠性的影响,与其他因素相比作用较小。
可能是因为程序语言基于严格的语法和语义规则,人们企图用形式化证明方法来证明程序的正确性。将程序当作数学对象来看待,从数学意义上证明程序是正确的是可能的。数学家对形式化证明方法最有兴趣,在论文上谈起来非常吸引人,但实际价值却非常有限,因为形式化证明方法只有在代码写出来之后才能使用,这显然太迟了,而且对于大的程序证明起来非常困难。
受到其他行业项目工程化的启发,软件工程学出现了,软件开发被视为一项工程,以工程化的方法来进行规划和管理软件的开发。
针对需求不确定的应用,可以使用渐进和迭代类的开发模型。还可以采用快速应用程序开发(rad)和协同应用程序开发(jad)技术,由软件开发者和用户代表共同参与开发软件规范。rad和jad的基本思路是开发者和用户共同设计系统中的屏幕,开发者迅速地把实现这些屏幕的最基本功能编写好,然后把它们交给用户看,然后用户和开发者回顾这些屏幕以确认它们达到了用户的要求,这个周期一直持续到系统的基本部分定义完毕。一旦设计被用户接受,开发者将完成完全实现屏幕需要的代码。rad和传统软件开发项目之间的一个基本区别是:应用程序rad系统是按阶段发布的。传统项目一般一次发布,也叫“big bang”。rad方法使用高效开发工具,开发者能够非常迅速地设计出系统的基本屏幕,允许用户在开发周期中很早就能见识到系统将来看起来怎么样,避免了在传统开发项目中长篇大论并且枯燥难懂的说明。
ibm的dr.harlan mills提出了净室过程。净室过程组合了形式化程序验证和统计过程控制(spc)。在这种方法中,首先用正确性数学证明预防缺陷发生,然后用mtbf度量软件质量。净室过程是一种相当新的软件开发方法,它要求软件开发在管理方式和技术方法上作重大改变,特别是要求spc应用到软件的知识,这影响了其被广泛的接受。
硬件成本持续降低,可支持case工具运行的新的强大的工作站和网络已经成为软件工程使用的工作平台,case工具可完成一些特定的软件开发过程。这些工具提供给软件设计者以图形方式描述软件设计的能力,这样就易于维护、易于交叉检查、易于理解。许多人(尤其是case工具供货商)相信case工具扮演了解决软件危机和拯救软件工业的角色,但事实上我们看到的情形却是许多公司花了大量的金钱买回的case工具但很少使用,原因在于这些工具执行的过程与机构的软件设计过程不相适用。
在可以借助许多新的技术和工具进行软件开发的今天,软件开发过程的成熟性问题开始引起人们的重视。这种产品一致性问题的主要症结在于管理,因此人们将目标转向了管理的改善,一些以改进软件开发过程为目标的活动已经展示出积极的结果。
以下是一些比较典型的文本。
  sei sw-cmm
  iso spice(software process improvement and capability determination)
  bootstrap
  iso-9000-3
  tickit
  trillium
事实上,对于软件来讲,还没有象银弹那样的东西。不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。
测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,工作量往往占软件开发总工作量的40%以上。而在软件开发的总成本中,用在测试上的开销要占30%到50%。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。因此,测试对于软件生产来说是必需的,问题是我们应该思考“采用什么方法、如何安排测试?”


关键词: 软件测试

评论


相关推荐

技术专区

关闭
为什么晚上不能剪指甲 喝酒对身体有什么危害 尿道炎症吃什么药 义眼是什么 7月6日是什么日子
为什么身上有红色的痣 小孩为什么会得手足口病 印堂发红是什么的征兆 3月4日是什么星座 新生儿头发稀少是什么原因
现在是什么时间 blm是什么意思 农历六月是什么夏 华语是什么语言 罗京什么病
长闭口是什么原因造成的 大是什么意思 阴道内壁是什么样的 出轨是什么意思 罪恶感什么意思
湿疹和荨麻疹有什么区别hcv8jop4ns7r.cn 珠海有什么特产helloaicloud.com 节节草有什么功效chuanglingweilai.com 为什么会长湿疹hcv9jop7ns9r.cn 忽悠什么意思hcv9jop7ns5r.cn
石斛是什么东西hcv9jop5ns7r.cn 2月27号是什么星座shenchushe.com 禅茶一味什么意思hcv8jop5ns6r.cn 三月二十二是什么星座hcv8jop3ns2r.cn 美国全称是什么hcv8jop4ns4r.cn
经常干咳嗽是什么原因hcv9jop7ns5r.cn 晚上11点到12点是什么时辰hcv8jop0ns1r.cn 什么属相不能挂山水画hcv7jop4ns8r.cn 女性更年期在什么年龄段hcv8jop1ns3r.cn 血压什么时候最高hcv7jop4ns8r.cn
primark是什么牌子0735v.com 龟苓膏有什么功效hcv8jop0ns4r.cn 排卵试纸强阳说明什么fenrenren.com 什么叫有格局的人hcv8jop0ns5r.cn 生脉饮适合什么人群hcv8jop0ns6r.cn
百度