《精通软件性能测试与LoadRunner最佳实战》—第1章1.2节软件相关概念解析

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
性能测试 PTS,5000VUM额度
简介:

本节书摘来自异步社区《精通软件性能测试与LoadRunner最佳实战》一书中的第1章1.2节软件相关概念解析,作者于涌 , 王磊 , 曹向志 , 高楼 , 于跃,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.2 软件相关概念解析
精通软件性能测试与LoadRunner最佳实战
大家从上面的软件故障或缺陷的实例中不难发现,这些软件故障和缺陷拥有很多的共同特点。首先,软件的开发过程与预期设计目标不一致,如前面举的爱国者导弹的例子。其次,闭门造车,没有实际考察客户的真正应用环境,仅仅按照自己的想法进行实施,尽管进行了测试,但是并没有覆盖到大多数用户应用软件的所有场景,如狮子王游戏软件就是因为研发出来的软件没有考虑实际用户的应用环境而引发的问题;而奥运售票系统也反映出在没有考虑到实际用户的访问量的情况而造成的重大的事故。

那么什么是软件?什么是缺陷呢?什么是软件生命周期?在学习软件测试之前,大家应对这些概念有一个清晰的认识。

1.软件的概念
简单地说,软件就是程序与文档的集合。程序指实现某种功能的指令的集合,如目前广泛被应用于各行各业的Java程序、Delphi程序、Visual Basic程序、C#程序等。文档是指在软件从无到有这个完整的生命周期中产生的各类图文的集合。具体可以包括《用户需求规格说明书》、《需求分析》、《系统概要设计》、《系统详细设计》、《数据库设计》、《用户操作手册》等相关文字及图片内容。

2.软件缺陷的概念
软件缺陷是指计算机的硬件、软件系统(如操作系统)或应用软件(如办公软件、进销存系统、财务系统等)出现的错误,大家经常会把这些错误叫做“Bug”。“Bug”在英语中是臭虫的意思。在以前的大型机器中,经常出现有些臭虫破坏了系统的硬件结构,导致硬件运行出现问题,甚至崩溃。后来,Bug这个名词就沿用下来,Bug被引伸为错误的意思,什么地方出了问题,就说什么地方出了Bug,也就用Bug来表示计算机系统或程序中隐藏的错误、缺陷或问题。

硬件的出错有两个原因,一种原因是设计错误,另一种原因是硬件部件老化失效等。软件的错误基本上是由于软件开发企业设计错误而引发的。设计完善的软件不会因用户可能的误操作产生Bug,如本来是做加法运算,但错按了乘法键,这样用户会得到一个不正确的结果,这个误操作产生错误的结果,但不是Bug。

3.软件生命周期的概念
软件生命周期是从软件需求的定义、产生直到被废弃的生命周期,生命周期内包括软件的需求定义、可行性分析、软件概要设计、软件详细设计、编码实现、调试和测试、软件验收与应用、维护升级到废弃的各个阶段,这种按时间分为各个阶段的方法是软件工程中的一种思想,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
16天前
|
SQL 安全 测试技术
网络安全的屏障与钥匙:漏洞防护与加密技术解析软件测试的艺术:探索性测试的力量
【8月更文挑战第27天】在数字时代的海洋中,网络安全是保护我们数据资产的灯塔和堤坝。本文将深入浅出地探讨网络安全领域的关键要素——安全漏洞、加密技术以及不可或缺的安全意识。通过实际案例分析,我们将了解如何识别和修补潜在的安全漏洞,掌握现代加密技术的工作原理,并培养起一道坚固的安全防线。文章旨在为读者提供实用的知识和技能,以便在日益复杂的网络环境中保持警惕,确保个人及组织信息的安全。
|
8天前
|
网络协议 网络安全
基于bind软件部署DNS服务器
关于如何使用bind软件部署DNS服务器的教程,包括DNS服务器的类型、基于bind软件的部署步骤、验证DNS服务器可用性的指导,以及如何进行DNS正向解析的实现。
11 2
基于bind软件部署DNS服务器
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
Transformer图解以及相关的概念解析
前言 transformer是目前NLP甚至是整个深度学习领域不能不提到的框架,同时大部分LLM也是使用其进行训练生成模型,所以transformer几乎是目前每一个机器人开发者或者人工智能开发者不能越过的一个框架。接下来本文将从顶层往下去一步步掀开transformer的面纱。 transformer概述 Transformer模型来自论文Attention Is All You Need。 在论文中最初是为了提高机器翻译的效率,它使用了Self-Attention机制和Position Encoding去替代RNN。后来大家发现Self-Attention的效果很好,并且在其它的地
23 2
|
20天前
|
测试技术 Python
python自动化测试中装饰器@ddt与@data源码深入解析
综上所述,使用 `@ddt`和 `@data`可以大大简化写作测试用例的过程,让我们能专注于测试逻辑的本身,而无需编写重复的测试方法。通过讲解了 `@ddt`和 `@data`源码的关键部分,我们可以更深入地理解其背后的工作原理。
18 1
|
20天前
|
XML Web App开发 数据挖掘
Postman接口测试工具全解析:功能、脚本编写及优缺点探讨
文章详细分析了Postman接口测试工具的功能、脚本编写、使用场景以及优缺点,强调了其在接口自动化测试中的强大能力,同时指出了其在性能分析方面的不足,并建议根据项目需求和个人偏好选择合适的接口测试工具。
29 1
|
24天前
|
运维 负载均衡 算法
“分布式基础概念”全面解析,让你秒懂分布式系统!【一】
该博客文章全面解析了分布式系统的基础概念,包括微服务架构、集群与分布式的区别、节点定义、远程调用、负载均衡、服务注册与发现、配置中心、服务熔断与降级以及API网关,帮助读者快速理解分布式系统的关键组成部分和工作原理。
“分布式基础概念”全面解析,让你秒懂分布式系统!【一】
|
11天前
|
API UED 开发者
超实用技巧大放送:彻底革新你的WinForms应用,从流畅动画到丝滑交互设计,全面解析如何在保证性能的同时大幅提升用户体验,让软件操作变得赏心悦目不再是梦!
【8月更文挑战第31天】在Windows平台上,使用WinForms框架开发应用程序时,如何在保持性能的同时提升用户界面的吸引力和响应性是一个常见挑战。本文探讨了在不牺牲性能的前提下实现流畅动画与交互设计的最佳实践,包括使用BackgroundWorker处理耗时任务、利用Timer控件创建简单动画,以及使用Graphics类绘制自定义图形。通过具体示例代码展示了这些技术的应用,帮助开发者显著改善用户体验,使应用程序更加吸引人和易于使用。
29 0
|
11天前
|
安全 测试技术 网络安全
|
21天前
|
测试技术 持续交付 数据库
容器镜像解析问题之区分单元测试和集成测试如何解决
容器镜像解析问题之区分单元测试和集成测试如何解决
12 0
|
21天前
|
消息中间件 安全 RocketMQ
就软件研发问题之ACL 2.0接口不同的授权参数解析的问题如何解决
就软件研发问题之ACL 2.0接口不同的授权参数解析的问题如何解决

推荐镜像

更多