51Testing软件测试论坛
标题: Translation of 《Software Testing》 Second Edition By Ron Patton [打印本页]
作者: june_zhuhui 时间: 2010-9-26 12:49
标题: Translation of 《Software Testing》 Second Edition By Ron Patton
想转行做软件测试,所以作为新手的我买了几本这方面的书来读,大家都说很多书要看原版的比较好,但是需要一个前提条件,就是英文水平要可以。
虽然自己的英文比较滥,但是考虑了许久,最后我还是买了Ron Patton的《Software Testing》Second Edition英文版,首先,因为它是大家推荐的软件测试入门必读书籍之一,其次,是想借机学习并提高一下自己的英语(我相信人是需要逼的)。
在读的过程中,发现这本书确实写的很好,是一本入门的好书,的的确确可以学到一些实际工作中能运用的测试技巧。
但是,毕竟自己英文水平很有限,恐怕有很多翻的不妥的地方,只是自己不知道。所以,我决定来51testing论坛发贴,把自己的翻译贴出来,除了方便交流,主要是让大家监督我,还希望高手给我指点指点。
只是为了逼自己学英文。
我第一遍粗读,第二遍精读,我想我还会读第三遍的,因为这本书写的很好。
现在第一边粗读到第6章,粗读的比较快,大概了解一下内容。
精读才刚刚开始,就是不放过任何一个英文单词,而且还要翻译出来。
坚持就是胜利!
作者: june_zhuhui 时间: 2010-9-26 12:50
本帖最后由 june_zhuhui 于 2010-9-29 12:50 编辑
本书信息
关于作者
目录(一)
目录(二)
引言
本书组织结构
第一部分
作者: june_zhuhui 时间: 2010-9-26 12:51
Software Testing - Second Edition
By Ron Patton
------------------------------
Publisher: Sams Publishing
Pub Date: July 26, 2005
ISBN: 0-672-32798-8
Pages: 408
软件测试 – 第2版
作者:罗恩.巴顿
------------------------------
出版商:萨姆斯出版社
出版日期:2005年7月26日
ISBN:0-672-32798-8
总页数:408
注:本人买的是由培生教育亚洲有限公司授权机械工业出版社(中国)2006年1月独家出版,2008年3月第4次印刷的英文版。
Software Testing, Second Edition provides practical insight into the world of software testing and quality assurance. Learn how to find problems in any computer program, how to plan an effective test approach and how to tell when software is ready for release. Updated from the previous edition in 2000 to include a chapter that specifically deals with testing software for security bugs, the processes and techniques used throughout the book are timeless. This book is an excellent investment if you want to better understand what your Software Test team does or you want to write better software.
软件测试第2版深入到了软件测试和质量保证的实际应用中。指导我们如何在任意计算机程序中寻找问题,如何编写有效的测试方法和如何确定何时可以发布软件。更新版本相对于2000年的版本多加入了一个关于“软件安全测试”的章节,贯穿此书的这种方法和技术是永不过时的。如果你想更好的了解你所在的软件测试团队具体要做些什么或者是你想开发更高质量的软件,此书会是一个很好的选择。
作者: june_zhuhui 时间: 2010-9-26 12:51
About the Author
Ron Patton lives in the Seattle area with his wife, Valerie. His software test experience is wide and varied, from mission-critical systems to painting programs for kids. Ron graduated from Penn State in 1984 with a B.S. degree in computer science. He began his career at Taxes Instruments as a quality assurance engineer, testing embedded systems and user interface software for industrial automation equipment. In 1992 he joined Microsoft as a software test lead in the Systems Group for Multimedia Viewer, the authoring tool and multimedia display engine used by Encarta, Cinemania, and Bookshelf. He moved on to become the software test manager of the Kids Product Unit, shipping CD-ROM titles such as Creative Writer, Fine Artist, 3D movie Maker, and the Magic School Bus series. Before he left Microsoft, he was the software test manager of the Hardware Group, responsible for the software shipped with the mouse, keyboard, gaming, telephony, and ActiMates product lines. He currently is a freelance project management and software quality consultant.
Ron’s most memorable project was ActiMates Barney, for which he test managed both the hardware and software efforts. “Microsoft actually paid my team and me to shake, bake, freeze, thaw, pull, drop, tumble, dunk, and shock dozens of prototype Barney dolls until we reduced them to piles of electronic rubble and purple fuzz,” he recalls. “You can’t get much more test satisfaction than that.”
If you have comments or suggestions for this book, or if you find a bug in it that you want to report, you can send Ron an email at test@valart.com
作者简介
罗恩.巴顿和他的妻子瓦莱丽一起居住在西雅图地区。他的软件测试经验博大精深,从关键业务系统到儿童绘图程序。罗恩于1984年毕业于宾西法尼亚州州立大学,并获得了计算机科学理学士学位。他的职业生涯始于德州仪器,担任质量保证工程师,负责测试工业自动化设备中的嵌入式系统和用户接口软件。1992年他作为软件测试组长加入微软公司的系统组,致力于运用于微软百科全书、微软疯狂电影和微软书架的多媒体阅读器、创作工具和多媒体展示引擎等测试工作。后来他升职为儿童娱乐产品部门的软件测试经理,负责需要海运外销的光盘,如创造作家、艺术家、3D电影制作和魔法学校班车系列。在他离开微软之前,他已是硬件组的软件测试经理了,负责测试关系到鼠标、键盘、博弈、电话和ActiMates生产线的软件。他目前是一个自由职业者:项目管理人兼软件质量顾问。
罗恩所测试的项目中让他最记忆犹新的是ActiMates Barney项目,他负责软件和硬件两方面的测试工作。“微软实际上让我和我的团队利用摇晃、烘烤、冷藏、溶解、拉、扯、摔、浸泡和电击等方式来测试成打的Barney玩偶雏形直到我们把他们捣成一堆电子碎片和紫色绒毛。”他回忆说,“再也没有比这更令人满意的测试了。”
假如你对本书有任何意见和建议,或者发现了关于本书的缺陷,请给罗恩发电子邮件到 test@valart.com
Dedication
To my best friend and wife, Valerie, who’s hoping that after I finish this second edition we can go on vacation to a tropical island.
题词
将此书献给我最好的朋友,我的妻子瓦莱丽,她一直希望等我完成了第2版后能同她一起去一个热带岛屿度假。
Acknowledgments
Many thanks go to Sams Publishing and the editors and staff who helped me publish this second edition. A big thank you goes to Danny Faught who provided great input as an expert reviewer.
To my parents, Walter and Eleanore, for allowing me to quit my accordion lessons and buying me a TRS-80 Model I computer back in 1977. To my sister, Saundra, for keeping my parents busy with her baton competitions so I could hide in my room and learn to program. To Ruth Voland, my computer science teacher at Mohawk High School, for dragging me to all those science fairs and giving me extra time on the school’s ASR 33 teletypes. To Mark Ferrell, who taught me electronics and kept me out of trouble as a teenager. To Alan Backus and Galen Freemon of TI for allowing me the freedom to explore software test automation. To all my past co-workers and employees for teaching me more than I could have ever learned myself about software testing. And to my wonderful wife, Valerie, for saying, “Go ahead, send it in, see what happens” when, in1991, I posed the question of sending my resume to a little company in far-away Seattle called Microsoft. Each of you made a contribution to this book. Thank you!
致谢
十分感谢萨姆斯出版社,感谢所有的编辑,以及所有帮助过我出版本书第2版的人。特别感谢丹尼.福特作为一个专业评论家提供了大量有用的资料。
感谢我的父母,沃尔特和埃利诺,允许我退掉手风琴的课程,而且在1977年他们给我买了一台TRS-80 I型的计算机。感谢我的妹妹,桑德拉,在忙于接力比赛的时候照顾父母,因此我可以躲在自己的房间学习编程。感谢卢斯.沃兰德,我在Mohawk高中的计算机老师,带着我去各种科学展会,还给我额外的时间去研究学校的ASR 33电报交换机。感谢马克.费洛教会我电子学应用,并使我摆脱青少年的困惑。感谢艾伦.巴克斯和TI的迦林.傅雷让我自由探索软件测试自动化。感谢所有以前的同事和搭档教会了我很多我自己没办法学到的软件测试方面的东西。还有,感谢我出色的妻子,瓦莱丽,1991年当我询问是否要将我的简历投递到一家远在西雅图的名叫微软的小公司时,是你对我说,“去吧,递过去,看看会发生什么事情”。你们每一个人都为这本书作出了贡献。非常感谢!
We Want to Hear from You!
As the reader of this book, you are our most important critic and commentator. We value your opinion and want to know what we’re doing right, what we could do better, what areas you’d like to see us publish in, and any other words of wisdom you’re willing to pass our way.
As a publisher for Sams Publishing, I welcome your comments. You can email or write me directly to let me know what you did or didn’t like about this book – as well as what we can do to make our books better.
Please note that I cannot help you with technical problems related to the topic of this book. We do have a User Services group, however, where I will forward specific technical questions related to the book.
When you write, please be sure to include this book’s title and author as well as your name, email address, and phone number. I will carefully review your comments and share them with the author and editors who worked on the book.
Email: feedback@samspublishing.com
Mail: Paul Boger
Sams Publishing
800 East 96th Street
Indianapolis, IN 46240 USA
For more information about this book or another Sams Publishing title, visit our website at www.samspublishing.com. Type the ISBN(0672327988) or the title of a book in the Search field to find the page you’re looking for.
期待听到你的声音!
作为此书的读者,你是我们最重要的批评家和评论家。我们会尊重你的意见,这样我们会了解自己哪里做的好,哪里可以做的更好,你期待我们出版哪些方面的书,以及任何其他想要传达给我们的智慧箴言。
作为萨姆斯出版社的出版者,期待你的评论。你可以通过发邮件或者直接写信给我,让我们知道你喜欢或不喜欢这本书,以及我们如何可以使我们的书更好。
需要提醒你的是,出版社无法帮你解决本书相关主题的技术问题,但是我们有一个读者的技术服务团队,当然,我会转发和本书相关的具体技术问题。当你写信给我们的时候,别忘了把书名和作者,当然还有你的名字,邮箱地址和电话号码写清楚。出版社会仔细阅读并同本书的作者以及编辑们分享你的评论。
邮箱地址:feedback@samspublishing.com
收信人:Paul Boger
出版商:萨姆斯出版社
地址:美国印第安纳波利斯第96街东街800号
想要了解本书的更多信息或本出版社的其他书籍,请访问我们的网站:www.samspublishing.com 。在搜索框内输入你想要查询的国际标准书号(如0672327988)或书名。
Study Notes:
Ron Patton 罗恩.巴顿,美国人
Investment 值得买的东西
Seattle 西雅图,美国华盛顿首府
Valerie [女子名]瓦莱丽,亦可作Valery,Valeria的变体
Wide and Varied 广泛及多样,译为博大精深比较贴切
Mission-critical 英语中的原意是重大的任务,在计算机领域中用来特指那种不允许停机的重要系统为Mission Critical System,主要是指企业的骨干业务系统。关键业务是指电信、银行等社会基础设施行业,必须保证24小时365天不间断运行的核心业务
Penn State 即Pennsylvania State University,宾西法尼亚州州立大学
B.S. 即Bachelor of Science,理学士
Ron’s most memorable project was ActiMates Barney, for which he test managed both the hardware and software efforts 该句型翻译我是这么理解的,he test for ActiMates Barney which managed both the hardware and software efforts…
作者: june_zhuhui 时间: 2010-9-26 12:54
本帖最后由 june_zhuhui 于 2010-9-26 13:20 编辑
Table of Contents 目录
Introduction 简介
About the Second Edition 关于第二版
Who Should Use This Book? 本书读者群?
What This Book Will Do for You 本书可以为你带来什么
Software Necessary to Use This Book 阅读本书时必需的软件
How This Book Is Organized 本书组织结构
Part I: The Big Picture 第一部分:软件测试综述
Part II: Testing Fundamentals 第二部分:测试基础
Part III: Applying Your Testing Skills 第三部分:运用测试技术
Part IV: Supplementing Your Testing 第四部分:测试的补充
Part V: Working with Test Documentation 第五部分:测试文档编写
Part VI: The Future 第六部分:软件测试前景
Appendix 附录
Conventions Used in This Book 本书使用的约定
Part I: The Big Picture 第一部分: 软件测试综述
1 Software Testing Background 第一章 软件测试的背景
Infamous Software Error Case Studies 臭名昭著的软件错误案例研究
Disney’s Lion King, 1994-1995 迪斯尼的狮子王,1994-1995
Intel Pentium Floating-Point Division Bug, 1994 英特尔奔腾浮点数除法缺陷,1994
NASA Mars Polar Lander, 1999 美国航天局火星极地登陆者号探测器,1999
Patriot Missile Defense System, 1991 爱国者导弹防御系统,1991
The Y2K (Year 2000) Bug, circa 1974 千年虫问题,1974年前后
Dangerous Viewing Ahead, 2004 危险的预见,2004
What Is a Bug? 什么是软件缺陷?
Terms for Software Failures 软件故障术语
Software Bug: A Formal Definition 软件缺陷的官方定义
Why Do Bugs Occur? 为什么会出现软件缺陷?
The Cost of Bugs 修复软件缺陷的成本
What Exactly Does a Software Tester Do? 软件测试员究竟做些什么工作?
What Makes a Good Software Tester? 优秀的软件测试员应具备哪些特质?
Summary 本章小结
Quiz 小测验
2 The Software Development Process 第二章 软件开发的过程
Product Components 产品的组成部分
What Effort Goes Into a Software Product? 软件产品需要投入多少工作?
What Parts Make Up a Software Product? 软件产品由哪些部分组成?
Software Project Staff 软件项目成员
Software Development Lifecycle Models 软件开发生命周期模型
Big-Bang Model 大爆炸模型
Code-and-Fix Model 边写边改模型
Waterfall Model 瀑布模型
Spiral Model 螺旋模型
Summary 本章小结
Quiz小测验
3 The realities of Software Testing 第三章 软件测试的实质
Testing Axioms 测试的原则
It’s Impossible to Test a Program Completely 完全测试是不可能的
Software Testing Is a Risk-Based Exercise 软件测试是基于风险的行为
Testing Can’t Show That Bugs Don’t Exist 测试无法显示潜伏的缺陷
The More Bugs You Find, the More Bugs There Are 未发现的缺陷数和已发现的缺陷数是成正比的
The Pesticide Paradox 杀虫剂悖论
Not All the Bugs You Find Will Be Fixed 并非所有的缺陷都要修复
When a Bug’s a Bug Is Difficult to Say 什么时候才叫缺陷很难断言
Product Specifications Are Never Final 产品说明书从没有最终版本
Software Testers Aren’t the Most Popular Members of a Project Team 软件测试员在项目小组中不受欢迎
Software Testing Is a Disciplined Technical Profession 软件测试是一项讲究条理技术专业
Software Testing Terms and Definitions 软件测试术语和定义
Precision and Accuracy 精确和准确
Verification and Validation 确认和验证
Quality and Reliability 质量和可靠性
Testing and Quality Assurance (QA) 测试和质量保证(简称QA)
Summary 本章小结
Quiz小测验
Part II: Testing Fundamentals 第二部分: 测试基础
4 Examining the Specification 检查产品说明书
Getting Started
Black-Box and White-Box Testing 黑盒测试和白盒测试
Static and Dynamic Testing 静态测试和动态测试
Static Black-Box Testing: Testing the Specification 静态黑盒测试:测试产品说明书
Performing a High-Level Review of the Specification 对产品说明书执行高层次审查
Pretend to Be the Customer 假设自己是客户
Research Existing Standards and Guidelines 研究现有的标准和规范
Review and Test Similar Software 审查和测试类似软件
Low-Level Specification Test Techniques 产品说明书的低层次测试技术
Specification Attributes Checklist 产品说明书属性检查清单
Specification Terminology Checklist 产品说明书术语检查清单
Summary本章小结
Quiz小测验
5 Testing the Software with Blinders On 戴上眼罩测试软件
Dynamic Black-Box Testing: Testing the Software While Blindfolded 动态黑盒测试:蒙上眼睛测试软件
Test-to-Pass and Test-t0-Fail 通过性测试和失效性测试
Equivalence Partitioning 等价类划分
Data Testing 基于数据的测试
Boundary Conditions 边界条件
Sub-Boundary Conditions 次边界条件
Default, Empty, Blank, Null, Zero, and None默认、空白、空值、无效、零和无
Invalid, Wrong, Incorrect, and Garbage Data 非法、错误、不正确和垃圾数据
State Testing 基于状态的测试
Testing the Software’s Logic Flow 测试软件的逻辑流程
Testing States to Fail 失败状态测试
Other Black-Box Test Techniques 其他黑盒测试技术
Behave Like a Dumb User 像笨拙的用户那样做
Look for Bugs Where You’ve Already Found Them 在已经找到软件缺陷的地方再找找
Think like a Hacker 像黑客一样思考问题
Follow Experience, Intuition, and Hunches 凭经验、直觉和预感
Summary本章小结
Quiz小测验
6 Examining the Code 检查代码
Static White-Black Testing: Examining the Design and Code静态白盒测试:检查设计和代码
Formal Reviews 正式检查
Peer Reviews 同事检查
Walkthroughs 走读
Inspections 检验
Coding Standards and Guidelines 编码标准和规范
Examples of Programming Standards and Guidelines 编程标准和规范示例
Obtaining Standards 获取标准
Generic Code Review Checklist 通用代码审查清单
Data Reference Errors 数据引用错误
Data Declaration Errors 数据声明错误
Computation Errors 计算错误
Comparison Errors 比较错误
Control Flow Errors 控制流程错误
Subroutine Parameter Errors 子程序参数错误
Input/Output Errors 输入/输出错误
Other Checks 其它检查
Summary本章小结
Quiz小测验
7 Testing the Software with X-Ray Glasses 戴上X光眼镜测试软件
Dynamic White-Box Testing 动态白盒测试
Dynamic White-Box Testing Versus Debugging 比较动态白盒测试与调试
Testing the Pieces 分段测试
Unit and Integration Testing 单元测试和集成测试
An Example of Module Testing 单元测试示例
Data Coverage 数据覆盖
Data Flow 数据流
Sub-Boundaries 次边界
Formulas and Equations 公式和等式
Error Forcing 错误强制
Code Coverage 代码覆盖
Program Statement and Line Coverage 程序语句和代码行覆盖
Branch Coverage 分支覆盖
Condition Coverage 条件覆盖
Summary本章小结
Quiz小测验
作者: 愚人 时间: 2010-9-26 12:54
牛,直接看英文的……
作者: june_zhuhui 时间: 2010-9-26 12:54
Part III: Applying Your Testing Skills 第三部分: 应用测试技术
8 Configuration Testing 配置测试
An Overview of Configuration Testing 配置测试综述
Isolating Configuration Bugs 分离配置缺陷
Sizing Up the Job 计算工作量
Approaching the Task 执行任务
Decide the Types of Hardware You’ll Need 确定所需的硬件类型
Decide What Hardware Brands, Models, and Device Drivers Are Available 确定硬件厂商、型号和可用的设备驱动程序
Decide Which Hardware Features, Modes, and Options Are Possible 确定可能的硬件特性、模式和选项
Pare Down the Identified Hardware Configurations to a Manageable Set 将确定的硬件配置缩减为可控范围
Identify Your Software’s Unique Features That Work with the Hardware Configurations 明确与硬件配置有关的软件特性
Design the Test Cases to Run on Each Configuration 设计在每一种配置中执行的测试用例
Execute the Tests on Each Configuration 在每一种配置中执行测试
Rerun the Tests Until the Results Satisfy Your Team 反复测试直到小组对结果满意为止
Obtaining the Hardware 获取硬件
Identifying Hardware Standards 明确硬件标准
Configuration Testing Other Hardware 对其他硬件进行配置测试
Summary本章小结
Quiz小测验
9 Compatibility Testing 兼容性测试
Compatibility Testing Overview 兼容性测试综述
Platform and Application Versions 平台和应用软件版本
Backward and Forward Compatibility 向前兼容和向后兼容
The Impact of Testing Multiple Versions 测试多个版本的影响
Standards and Guidelines 标准和规范
High-Level Standards and Guidelines 高级标准和规范
Low-Level Standards and Guidelines 低级标准和规范
Data Sharing Compatibility 数据共享兼容性
Summary 本章小结
Quiz 小测验
10 Foreign-Language Testing 外语测试
Making the Words and Pictures Make Sense 使文字和图片有意义
Translation Issues 翻译问题
Text Expansion 文本扩展
ASCII, DBCS, and Unicode ASCII、DBCS和Unicode
Hot Keys and Shortcuts 热键和快捷键
Extended Characters 扩展字符
Computations on Characters 字符计算
Reading Left to Right and Right to Left 从左到右和从右到左读
Text in Graphics 图形中的文字
Keep the Text out of the Code 让文本与代码脱离
Localization Issues 本地化问题
Content 内容
Data Formats 数据格式
Configuration and Compatibility Issues 配置和兼容性问题
Foreign Platform Configurations 国外平台配置
Data Compatibility 数据兼容性
How Much Should You Test? 测试量有多大?
Summary 本章小结
Quiz 小测验
11 Usability Testing 可用性测试
User Interface Testing 用户界面测试
What Makes a Good UI? 优秀UI由什么构成?
Follows Standards and Guidelines 符合标准和规范
Intuitive 直观
Consistent 一致
Flexible 灵活
Comfortable 舒适
Correct 正确
Useful 实用
Testing for the Disabled: Accessibility Testing 为残疾障碍人群测试:辅助选项测试
Legal Requirements 法律要求
Accessibility Features in Software 软件中的辅助特性
Summary 本章小结
Quiz 小测验
12 Testing the Documentation 测试文档
Types of Software Documentation 软件文档类型
The Importance of Documentation Testing 审查文档的重要性
What to Look for When Reviewing Documentation 审查文档时要找什么
The Realities of Documentation Testing 文档测试的实质
Summary 本章小结
Quiz 小测验
13 Testing for Software Security 软件安全性测试
WarGames---the Movie 战争游戏---电影
Understanding the Motivation 了解动机
Threat Modeling 威胁模式分析
Is Software Security a Feature? Is Security Vulnerability a Bug? 软件安全是一项功能吗? 软件安全漏洞是一个缺陷吗?
Understanding the Buffer Overrun 了解缓冲区溢出
Using Safe String Functions 使用安全字符串函数
Computer Forensics 计算机取证
Summary 本章小结
Quiz 小测验
14 Website Testing 网站测试
Web Page Fundamentals 网页基础
Black-Box Testing 黑盒测试
Text 文本
Hyperlinks 超级链接
Graphics 图片
Forms 表单
Objects and Other Simple Miscellaneous Functionality 对象及各种其他简单功能
Gray-Box Testing 灰盒测试
White-Box Testing 白盒测试
Configuration and Compatibility Testing 配置和兼容性测试
Usability Testing 易用性测试
Introducing Automation 自动化测试简介
Summary 本章小结
Quiz 小测验
Part IV: Supplementing Your Testing 第四部分: 测试的补充
15 Automated Testing and Test Tools 自动化测试和测试工具
The Benefits of Automation and Tools 自动化和工具的好处
Test Tools 测试工具
Viewers and Monitors 查看器和监视器
Drivers 驱动程序
Stubs 桩
Stress and Load Tools 压力和负载工具
Interference Injectors and Noise Generators 干扰注入器和噪声发生器
Analysis Tools 分析工具
Software Test Automation 软件测试自动化
Macro Recording and Playback 宏录制和回放
Programmed Macros 可编程的宏
Fully Programmable Automated Testing Tools 完全可编程的自动化测试工具
Random Testing: Monkeys and Gorillas 随机测试:猴子和大猩猩
Dumb Monkeys 笨拙的猴子
Semi-Smart Monkeys 半聪明的猴子
Smart Monkeys 聪明的猴子
Realities of Using Test Tools and Automation 使用测试工具和自动化的实质
Summary 本章小结
Quiz 小测验
16 Bug Bashes and Beta Testing 缺陷轰炸和Beta测试
Having Other People Test Your Software 让别人测试你的软件
Test Sharing 测试共享
Beta Testing Beta测试
Outsourcing Your Testing 外包测试
Summary 本章小结
Quiz 小测验
Part V: Working with Test Documentation 第五部分: 测试文档编写
17 Planning Your Test Effort 计划测试工作
The Goal of Test Planning 测试计划的目标
Test Planning Topics 测试计划主题
High-Level Expectations 高级期望
People, Places, and Things 人、地点和事
Definitions 定义
Inter-Group Responsibilities 团队之间的责任
What Will and Won’t Be Tested 哪些要测试,哪些不要测试
Test Phases 测试的阶段
Test Strategy 测试策略
Resource Requirements 资源需求
Tester Assignments 测试人员的任务分配
Test Schedule 测试进度
Test Cases 测试用例
Bug Reporting 软件缺陷报告
Metrics and Statistics 评估和统计
Risks and Issues 风险和问题
Summary 本章小结
Quiz 小测验
18 Writing and Tracking Test Cases 编写和跟踪测试用例
The Goals of Test Case Planning 测试用例计划的目标
Test Case Planning Overview 测试用例计划综述
Test Design 测试设计
Test Cases 测试用例
Test Procedures 测试程序
Test Case Organization and Tracking 测试用例组织和跟踪
Summary 本章小结
Quiz 小测验
19 Reporting What You Find 报告发现的缺陷
Getting Your Bugs Fixed 设法修复你发现的软件缺陷
Isolating and Reproducing Bugs 分离和再现软件缺陷
Not All Bugs Are Created Equal 并非所有的软件缺陷生来就是平等的
A Bug’s Life Cycle 软件缺陷的生命周期
Bug-Tracking Systems 软件缺陷跟踪系统
The Standard: The Test Incident Report 标准:测试事件报告
Manual Bug Reporting and Tracking 手工软件缺陷报告和跟踪
Automated Bug Reporting and Tracking 自动化软件缺陷报告和跟踪
Summary 本章小结
Quiz 小测验
20 Measuring Your Success 测试成效评估
Using the Information in the Bug Tracking Database 使用软件缺陷跟踪数据库中的信息
Metrics That You’ll Use in Your Daily Testing 在日常测试中使用的度量标准
Common Project-Level Metrics 常用项目级度量标准
Summary 本章小结
Quiz 小测验
Part VI: The Future 第六部分: 软件测试前景
21 Software Quality Assurance 软件质量保证
Quality Is Free质量是免费的
Testing and Quality Assurance in the Workplace 工作场所的测试和质量保证
Software Testing 软件测试
Quality Assurance 质量保证
Other Names for Software Testing Groups 软件测试团队的其它名称
Test Management and Organizational Structures 测试的管理和组织结构
Capability Maturity Model(CMM) 能力成熟度模型(CMM)
ISO 9000 ISO 9000
Summary 本章小结
Quiz 小测验
22 Your Career as a Software Tester 软件测试职业生涯
Your Job as a Software Tester软件测试员的工作
Finding a Software Testing Position 寻找软件测试职位
Gaining Hands-On Experience 获得亲身体验
Formal Training Opportunities 正规培训机会
Websites 网站
Professional Organizations Dedicated to Software or Software Quality 致力于软件和软件质量的专业组织
Further Reading 其他阅读资料
Summary 本章小结
Quiz 小测验
Study Notes:
Precision and Accuracy precision侧重于精确度, accuracy侧重于准确度,precision高能提高accuracy,但precision未必accuracy。
Verification and Validation verification侧重于确认You do it right,validation侧重于验证You do the right thing。
作者: june_zhuhui 时间: 2010-9-26 12:54
Introduction
It seems as though each day there’s yet another news story about a computer software problem or security breach: a bank reporting incorrect account balances, a Mars Lander lost in space, a grocery store scanner charging too much for bananas, or a hacker gaining access to millions of credit numbers.
Why does this happen? Can’t computer programmers figure out ways to make software just plain work? Unfortunately, no. As software gets more complex, gains more features, and is more interconnected, it becomes more an more difficult---actually, mathematically impossible---to create a glitch-free program. Despite how competent the programmers are and how much care is taken, there will always be software problems.
This is where software testing comes in. We’ve all found those little Inspector 12 tags in the pockets of our new clothes. Well, software has Inspector 12s, too. Most large software companies are so committed to quality they have one or more testers for each programmer. These jobs span the software spectrum from computer games to factory automation to business applications.
This book, Software Testing, will introduce you to the basics of software testing, necessary to become a successful software tester. You will learn how to immediately find problems in any computer program, how to plan an effective test approach, how to clearly report your findings, and how to tell when your software is ready for release.
引言
似乎每天仍有关于计算机软件问题和安全性漏洞的新闻报道:银行报告出现错误收支平衡、火星登陆者号探测器消失在太空、超市扫描仪器使香蕉收费太高,或者黑客获取数百万张信用卡卡号。
为什么会发生这些事情?难道计算机程序员就不会想办法使软件正常的工作吗?很不幸,没有办法。随着软件变得越来越复杂,功能越来越多,而且内部有更多的互联,那将变得越来越困难,事实上,写出一个无缺陷的程序是绝对不可能的事情。不管程序员的水平有多高,不管程序员多么心细,软件缺陷是一直存在的。
这就是软件测试的由来。我们发现在新衣服的口袋里有12个检验标记。对的,软件也有12个检验标记。大多数大型软件公司都致力于品质,他们为每一个程序员配备一个或更多的测试人员。此类工作涵盖了从计算机游戏到工厂自动化和商业应用领域。
软件测试这本书将给你介绍基本的软件测试基础知识,成为一个优秀软件测试员的必备特质。你将学习如何立即从任何计算机程序中发现问题,如何规划一个有效的测试方法,如何清楚地报告你所发现的问题,以及如何确定软件何时可以发布。
About the Second Edition
When I wrote the first edition of Software Testing, software security issues were just beginning to make the headlines. Hackers and security problems had always been a problem, but with the interconnectivity explosion that was about to occur, few in the industry could predict the impact that security bugs would have on developers and users of computer software.
In this second edition I’ve revisited every chapter to emphasize software security issues and point out how the basic testing techniques covered throughout the book can be used to prevent, find and fix them. I’ve also added a chapter that specifically addresses how to test for software security bugs.
If you’re a reader of the first edition, you know that no matter what you do, your software will still be released with bugs. As you’ll learn in the second edition, this axiom still holds true---even for security problems. However, by applying the lessons taught in this book you’ll go a long way towards assuring that the most important bugs don’t slip through and that your team will create the highest quality and most secure software possible.
关于第二版
当我写《软件测试》第一版的时候,软件安全性问题刚刚引起重视。黑客和安全性问题一直是一个难题,随着即将发生的互联性激增,业内极少有人可以预言安全漏洞会给计算机软件程序员和使用者带来什么影响。
在这本书的第二版中,我重写了每一章中关于软件安全问题的内容,并且指出了本书中有哪些基础测试技术可以用来预防、查找和解决这些问题。我还增加了一个章节专门讨论如何检测软件安全问题。
假如你是本书第一版的读者,你知道不管怎样,软件都将会带着缺陷发布。在第二版中,这个原则将仍然有效,此原则同样适用于软件安全问题。但是,通过应用本书中教授的经验,会帮助你确保不会遗漏重大缺陷,并可能创建高质量高安全性软件。
Who Should Use This Book?
This book is written for three different groups of people:
Students of computer hobbyists interested in software testing as a full-time job, internship, or co-op. Read this book before your interview or before your first day on the job to really impress your new boss.
Career changers wanting to move from their field of experience into the software industry. There are lots of opportunities for non-software experts to apply their knowledge to software testing. For example, a flight instructor could test a flight simulator game, an accountant could test tax preparation software, or a teacher could test a new child education program.
Programmers, software project managers, and other people who make up a software development team who want to improve their knowledge and understanding of what software testing is all about.
本书读着群?
本书针对三类不同人群:
想把软件测试作为全职工作的学生和计算机爱好者,比如实习生,带薪合作实习生。在你面试或者第一天上班前阅读本书,将会使你给老板留下深刻的好印象。
想从自己有经验的行业领域转到软件产业的人,软件测试为那些非软件行业专家提供了很多施展他们学识的机会。比如,飞行教官可以测试飞行类模拟游戏,会计师可以测试税务软件,教师可以测试一个新的儿童教育软件。
所有想要提高和了解什么是软件测试的程序员、软件项目经理,以及软件开发团对的其他人员。
What This Book Will Do for you
In this book you will learn something about nearly every aspect of software testing:
How software testing fits into the software development process
Basic and advanced software testing technique
Applying testing skills to common testing tasks
Improving test efficiency with automation
Planning and document your test effort
Effectively reporting the problems you find
Measuring your test effort and your product’s progress
Knowing the difference between testing and quality assurance
Finding a job as a software tester
本书可以为你带来什么
你几乎可以从本书中学到软件测试的方方面面:
软件测试如何融入软件开发过程
基础和高阶的软件测试技术
在日常工作任务中应用测试技术
运用自动化提高测试效率
规划和文档化测试工作
有效报告你发现的问题
评估你的测试工作和产品进展
了解测试与质量保证之间的区别
找一个软件测试员的工作
Software Necessary to Use This Book
The methods presented in this book are generic and can be applied to testing any type of computer software. But, to make the examples familiar and usable by most people, they are based on simple programs such as Calculator, Notepad, and WordPad included with Windows XP and Windows NT/2000.
Even if you’re using a Mac or a PC running Linux or another operating system, you will likely have similar programs available on your computer that you can easily adapt to the text. Be creative! Creativity is one trait of a good software tester.
阅读本书时必需的软件
本书中介绍的方法都是通用的,可以用来测试任何类型的计算机软件。但是,为了使示例能让大多数人熟悉和易用,需要一些基于Windows Xp和Windows NT/2000的简单程序,比如计算器、记事本和写字板。
即使是使用苹果机或者运行LINUX或者其他操作系统的个人电脑,也将会有类似的电脑程序可以方便的打开文本文件,有创意!创新是一个优秀软件测试员的特质。
NOTE
The examples used throughout this book of various applications, software bugs, and software tools are in on way intended as an endorsement or a disparagement of the software. They’re simply used to demonstrate the concepts of software testing.
注意
本书中用到的所有示例,包括各种应用软件、软件缺陷和软件测试工具,并不代表认同或排斥该软件。它们只是用来说明软件测试的概念。
Study Notes:
Mathematically impossible 数学上是不可能的,就是指绝对不可能发生的
作者: june_zhuhui 时间: 2010-9-26 12:55
本帖最后由 june_zhuhui 于 2010-9-27 11:00 编辑
How This Book Is Organized
This book is designed to lead you through the essential knowledge and skills necessary to become a good software tester. Software testing is not about banging on the keyboard hoping you’ll eventually crash the computer. A great deal of science and engineering is behind it, lots of discipline and planning, and there can be lots of fun, too---as you’ll soon see.
本书组织结构
本书目的是引领你通过学习软件测试基本知识和必要技术来成为一名优秀的软件测试员。软件测试不是通过随意敲击键盘来使计算机崩溃。它背后隐藏着大量的理工科原理,需要大量的准则和规划,也有很多有趣的东西,你快你就会发现。
Part I: The Big Picture 第一部分:软件测试综述
Part II: Testing Fundamentals 第二部分:测试基础
Part III: Applying Your Testing Skills 第三部分:运用测试技术
Part IV: Supplementing Your Testing 第四部分:测试的补充
Part V: Working with Test Documentation 第五部分:测试文档编写
Part VI: The Future 第六部分:软件测试前景
作者: june_zhuhui 时间: 2010-9-26 12:55
本帖最后由 june_zhuhui 于 2010-9-27 10:46 编辑
Part I: The Big Picture
The chapters in Part I lay the foundation for this book by showing you how software products are developed and how software testing fits into the overall development process. You’ll see the importance of software testing and gain an appreciation for the magnitude of the job.
Chapter 1, “Software Testing Background,” helps you understand exactly what a software bug is, how serious they can be, and why they occur. You’ll learn what your ultimate goal is as a software tester and what traits will help make you a good one.
Chapter 2, “The Software Development Process,” gives you an overview of how a software product is created in the corporate world. You’ll learn what components typically go into software, what types of people contribute to it, and the different process models that can be used.
Chapter 3, “The Realities of Software Testing,” brings a reality check to how software is developed. You’ll see why no matter how hard you try, software can never be perfect. You’ll also learn a few fundamental terms and concepts used throughout the rest of this book.
第一部分:软件测试综述
第一部的章节,通过描述软件产品如何开发和软件测试如何融入整个软件开发过程的内容来为更好的阅读本书打下基础。你将了解软件测试的重要性和理解软件测试工作的规模。
第1章,“软件测试背景”让你正确理解软件缺陷,软件缺陷的严重性,以及它们是如何产生的。你将认识到成为一名软件测试工作者并且拥有一名优秀软件测试工作者的特质才是你的最终目标。
第2章,“软件开发的过程”给你展示企业如何创建软件产品。你将认识到哪些典型组件构成软件,哪些人为软件做贡献,以及可能使用的不同过程模型。
第3章,“软件测试的实质”带来开发软件的现实可行性对照检查,你将明白无论你多努力,软件都不可能完美。你还会了解本书接下来用到的一些基本术语和概念。
作者: june_zhuhui 时间: 2010-9-26 12:55
本帖最后由 june_zhuhui 于 2010-9-27 10:47 编辑
Part II: Testing Fundamental
The chapters in Part II teach you the fundamental approaches to software testing. The work of testing software is divided into four basic areas, and you will see the techniques used for each one:
Chapter 4,”Examining the Specification,” teaches you how to find bugs by carefully inspecting the documentation that describes what the software is intended to do.
Chapter 5, “Testing the Software with Blinders On,” teaches you the techniques to use for testing software without having access to the code or even knowing how to program. This is the most common type of testing.
Chapter 6,”Examining the Code,” shows you how to perform detailed analysis of the program’s source code to find bugs. You’ll learn that you don’t have to be an expert programmer to use these techniques.
Chapter 7, “Testing the Software with X-Ray Glasses,” teaches you how you can improve your testing by leveraging information you gain by reviewing the code or being able to see it execute while you run your tests.
第二部分:测试基础
第二部分章节,教你软件测试的基本方法。软件测试工作被分为四个基本部分,以及每个部分使用到的测试技术:
第4章,“检查产品说明书”教你如何通过仔细检查产品详细说明文档来发现缺陷。
第5章,“戴上眼罩测试软件”教你不需要阅读代码甚至不懂编程的情况下使用的软件测试的技术。这是最常见的测试方式。
第6章,“检查代码”教你如何通过仔细的源代码分析来发现缺陷。你将了解到不是专业程序员也可以使用这些技术。
第7章,“戴上X光眼镜测试软件”教你如何通过检查代码或查看程序运行情况获得有效使用信息来提高和改进测试。
作者: june_zhuhui 时间: 2010-9-26 12:55
本帖最后由 june_zhuhui 于 2010-9-27 10:41 编辑
Part III: Applying Your Testing Skills
The chapters in Part III take the techniques that you learned in Part II and apply them to some real-world scenarios that you’ll encounter as a software tester:
Chapter 8, “Configuration Testing,” teaches you how to organize and perform software testing on different hardware configurations and platforms.
Chapter 9, “Compatibility Testing,” teaches you how to test for issues with different software applications and operating systems interacting with each other.
Chapter 10, “Foreign-Language Testing,” shows you that a whole world of software is out there and that it’s important to test for the special problems that can arise when software is translated into other languages.
Chapter 11,”Usability Testing,” teaches you how to apply your testing skills when checking a software application’s user interface and how to assure that your software is accessible to the disabled.
Chapter 12, “Testing the Documentation,” explains how to examine the software’s documentation such as help files, user manuals, even the marketing material, for bugs.
Chapter 13, “Testing for Software Security,” shows you how to find bugs that allow hackers to gain access to (supposedly) secure computer systems and data.
Chapter 14, “Website Testing,” takes everything you’ve learned so far and applies it to a present-day situation. You’ll see how something as simple as testing a website can encompass nearly all aspects of software testing.
第三部分:应用测试技术
第三部分章节,将第二部分所学技术应用到测试工作者实际工作中会遇到的场景中:
第8章,“配置测试”教你如何在不同硬件配置和平台上组织并执行软件测试。
第9章,“兼容性测试”教你如何测试不同软件应用程序和操作系统之间相互影响的问题。
第10章,“外语测试”给你一个全球性软件,当软件被翻译成其他语言时,测试这个可能产生的特殊问题是很重要的。
第11章,“可用性测试”教你在检查软件应用程序用户界面时如何运用测试技术,以及如何确保软件方便残疾人士使用。
第12章,“测试文档”解释如何检查软件文档,比如帮助文档、用户手册、甚至市场资料的缺陷。
第13章,“软件安全性测试”告诉你如何从黑客访问计算机系统和数据的漏洞中发现缺陷。
第14章,“网站测试”将你目前为止所学一切技术运用到当前实际情况中。你会发现不管测试多么简单的一个网站都会用到几乎所有方面的软件测试知识。
作者: june_zhuhui 时间: 2010-9-26 12:55
本帖最后由 june_zhuhui 于 2010-9-27 10:48 编辑
Part IV: Supplementing Your Testing
The chapters in Part IV show you how to improve your test coverage and capability by leveraging both technology and people to perform your testing more efficiently and effectively:
Chapter 15, “Automated Testing and Test Tools,” explains how you can use computers and software to test other software. You’ll also learn why using technology isn’t foolproof.
Chapter 16, ”Bug Bashes and Beta Testing,” shows you how to use other people to see the software differently and to find bugs that you completely over-looked.
第四部分:测试的补充
第五部分章节,教你如何通过有效使用技术和人力方面的资源来提高测试覆盖率和测试技能,以便更加有效地执行测试:
第15章,“自动化测试和测试工具”告诉你如何使用计算机和软件来测试其他软件。你还会明白为什么使用技术不是万无一失的。
第16章,“测试轰炸和Beta测试”教你如何利用其他人的不同方式来检查软件,以便发现你之前彻底漏掉的缺陷。
作者: june_zhuhui 时间: 2010-9-26 12:55
本帖最后由 june_zhuhui 于 2010-9-27 10:49 编辑
Part V: Working with Test Documentation
The chapter in Part V cover how software testing is documented so that its plans, bugs, and results can be seen and understood by everyone on the project team:
Chapter 17, “Planning Your Test Effort,” shows you what goes into creating a test plan for your project. As a new software tester, you likely won’t write a test plan from scratch, but it’s important to know what’s in one and why.
Chapter 18, “Writing and Tracking Test Cases,” teaches you how to properly document the test cases you develop so that you and other testers can use them.
Chapter 19, “Reporting What You Find,” teaches you how to tell the world when you find a bug, how to isolate the steps necessary to make it recur, and how to describe it so that others will understand and want to fix it.
Chapter 20, “Measuring Your Success,” describes various types of data, charts, and graphs used to gauge both your progress and success at testing and your software project’s steps toward release.
第五部分:测试文档编写
第五部分章节,涉及如何文档化软件测试工作,这样测试计划、软件缺陷、以及结果都能被项目组中的每一个人查看并理解:
第17章,“计划测试工作”告诉你测试计划包含哪些内容。作为一个初级软件测试工作者,不可能从无到有编写测试计划文档。但了解测试计划内容和为什么这么做是非常重要的。
第18章,“编写和跟踪测试用例”教你如何正确编写测试用例文档,以便你自己和其他测试人员都能使用它。
第19章,“报告发现的缺陷”教你如何把发现的缺陷告诉别人,如何分步骤重现缺陷,以及如何描述这个缺陷以便其他人能理解并修复它。
第20章,“测试成效评估”描述使用各种不同类型数据、图表来度量你的工作进度、测试成就和整个项目的发行步伐。
作者: june_zhuhui 时间: 2010-9-26 12:56
本帖最后由 june_zhuhui 于 2010-9-27 10:45 编辑
Part VI: The Future
The chapters in Part VI explain where the future lies in software testing and set the stage for your career:
Chapter 21, “Software Quality Assurance,” teaches you the big difference between software testing and quality assurance. You’ll learn about different software industry goals such as ISO 9000 and the Capabilities Maturity Model and what it takes to achieve them.
Chapter 22, “Your Career as a Software Tester,” gives you that kick in the behind to go out and be a software tester. You’ll learn what types of jobs are available and where to look for them. You’ll also find many pointers to more information.
第六部分:软件测试前景
第六部分章节,介绍软件测试前景和安排职业生涯的不同阶段:
第21章,“软件质量保证”使你懂得软件测试与质量保证的区别。你会学习软件业的不同标准,例如ISO 9000和软件能力成熟度模型,以及实现它们的必要条件。
第22章,“软件测试职业生涯”给你动力成为一名软件测试员。你会了解到什么类型的工作适合测试员以及哪里能找到它们。你还会发现更多指示和更多信息。
Study Notes:
From scratch 从头开始、从无到有、白手起家
作者: june_zhuhui 时间: 2010-9-26 12:56
本帖最后由 june_zhuhui 于 2010-9-27 13:41 编辑
Appendix
Each chapter in this book ends with a short quiz where you can try out the testing concepts that you learn. The answers appear in Appendix A, “Answers to Quiz Questions.”
附录
书中每一章的结尾都有一个小测验,你可以测验你所学到的测试概念。答案在附录A“小测验参考答案”中。
In addition to typographical conventions, the following special elements are included to set off different types of information to make them easily recognizable.
NOTE
Special notes augment the material you read in each chapter. These notes clarify concepts and procedures.
TIP
You’ll find various tips that offer shortcuts and solutions to common problems.
REMINDER
Reminders refer to concepts discussed in previous chapters to help refresh your memory and reinforce important concepts.
除了排版印刷约定外,还包括下面特殊规则来区分不同的信息类型,以便它们容易被分辨。
注释
特别注释每一章中有争议的内容。这些注释澄清概念和程序。
技巧
你会发现各种解决常规问题的技巧和方案。
提醒
提醒你在之前章节中讨论过的概念,以便帮助你记起并重新加固这些重要概念。
作者: june_zhuhui 时间: 2010-9-26 12:56
本帖最后由 june_zhuhui 于 2010-9-29 12:59 编辑
Part I
The Big Picture
A crash is when your competitor’s program dies. When your program dies, it is an “idiosyncrasy.” Frequently, crashes are followed with a message like “ID 02.” “ID” is an abbreviation for “idiosyncrasy” and the number that follows indicates how many more months of testing the product should have had.
-Guy Kawasaki, “The Macintosh Way”
I love deadlines. I especially like the whooshing sound they make as they go flying by.
-Douglas Adams, author of “The Hitch Hiker’s Guide to the Galaxy”
IN THIS PART
1 Software Testing Background
2 The Software Development Process
3 The Realities of Software Testing
第一部分
软件测试综述
当竞争对手的程序停止工作的时候叫崩溃。当自己的程序停止工作的时候叫“异常”。通常情况下,崩溃紧随其后的是一个类似的信息“ID 02”。“ID”是“异常”的缩写,而后面的数字则用来表示这个产品已经测试了几个月。
-盖伊.川崎,《麦金托什之路》
我喜欢最后期限,尤其喜欢它飞过时发出的嗖嗖声。
-道格拉斯.亚当斯,《银河系漫游指南》的作者
这一部分包括
1 软件测试的背景
2 软件开发的过程
3 软件测试的实质
1 软件测试的背景
作者: june_zhuhui 时间: 2010-9-26 12:57
本帖最后由 june_zhuhui 于 2010-9-29 12:58 编辑
1 Software Testing Background
IN THIS CHAPTER
Infamous Software Error Case Studies
What Is a Bug?
Why Do Bugs Occur?
The Cost of Bugs
What Exactly Does a Software Tester Do?
What Makes a Good Software Tester?
In 1947, computers were big, room-sized machines operating on mechanical relays and glowing vacuum tubes. The state of the art at the time was the Mark II, a behemoth being built at Harvard University. Technicians were running the new computer through its paces when it suddenly stopped working. They scrambled to figure out why and discovered, stuck between a set of relay contacts deep in the bowels of the computer, moth. It had apparently flown into the system, attracted by the light and heat, and was zapped by the high voltage when it landed on the relay.
The computer bug was born. Well, okay, it died, but you get the point.
Welcome to the first chapter of Software Testing. In this chapter, you’ll learn about the history of software bugs and software testing.
Highlights of this chapter include
How software bugs impact our lives
What bugs are and why they occur
Who software testers are and what they do
第一章 软件测试的背景
本章内容
臭名昭著的软件错误案例研究
什么是软件缺陷?
为什么会出现软件缺陷?
修复软件缺陷的成本
软件测试员究竟做些什么工作?
优秀的软件测试员应具备哪些特质?
1947年,计算机非常庞大,房间那么大的机器通过机械继电器和发光电子管来运作。运用当时最先进的Mark第二代技术,哈佛大学建造了一个庞然大物。当技术人员正在运行这台新的计算机来测试它总体性能的时候,它突然停止了工作。技术人员爬上计算机去查找原因,最后发现,是因为一只飞蛾被粘在了计算机内部很深的一组继电器触点间了。很显然,这只飞蛾被发光电子管的光和热所吸引而飞进计算机系统深处,最后当因为停靠在高电压的继电器上而被击毙。
计算机缺陷诞生了,好吧,好吧,它死了,但是你明白了吧。
欢迎来到软件测试的第一章,在这章里,你将学习关于软件缺陷和软件测试的历史。
本章精华
软件缺陷如何影响我们的生活
什么是软件缺陷,以及为什么会产生软件缺陷
软件测试员是哪些人,以及他们做些什么工作
臭名昭著的软件错误案例研究
作者: june_zhuhui 时间: 2010-9-26 12:57
本帖最后由 june_zhuhui 于 2010-9-29 13:02 编辑
Infamous Software Error Case Studies
It’s easy to take software for granted and not really appreciate how much it has infiltrated our daily lives. Back in 1947, the Mark II computer required legions of programmers to constantly maintain it. The average person never conceived of someday having his own computer in his home. Now there’s free software CD-ROMs attached to cereal boxes and more software in our kids’ video games than on the space shuttle. What once were techie gadgets, such as pagers and cell phones, have become commonplace. Most of us now can’t go a day without logging on to the Internet and checking our email. We rely on overnight packages, long-distance phone service, and cutting-edge medical treatment.
Software is everywhere. However, it’s written by people---so it’s not perfect, as the following examples show.
臭名昭著的软件错误案例研究
我们理所当然的接受软件的存在但却未曾真正意识到软件已经多大程度上渗透进我们的日常生活。回到1947年,用Mark第二代技术建造的计算机需要大量程序员时常去维护它。一般人从来没有设想过某一天在自己家中能拥有一台属于自己的电脑。现在到处都是附带在麦片盒的免费光盘,而且小孩子的电动游戏机里面的软件比太空飞船上的软件还要多。那些曾经只有技术员使用的小装置现在都已经变得很普遍了,比如寻呼机、手机。我们大多数人现在每天都要登陆互联网和者查收邮件。我们依赖隔夜包裹、长途电话服务,以及最先进的医疗服务。
软件无处不在。但是,它是人们手写出来的,所以它不是完美的,比如下面的例子。
作者: june_zhuhui 时间: 2010-9-26 12:57
保留11
作者: june_zhuhui 时间: 2010-9-26 12:57
保留12
作者: june_zhuhui 时间: 2010-9-26 12:57
保留13
作者: june_zhuhui 时间: 2010-9-26 12:58
保留14
作者: june_zhuhui 时间: 2010-9-26 12:58
保留15
作者: june_zhuhui 时间: 2010-9-26 12:58
保留16
作者: june_zhuhui 时间: 2010-9-26 12:58
保留17
作者: june_zhuhui 时间: 2010-9-26 12:58
保留18
作者: june_zhuhui 时间: 2010-9-26 12:58
保留19
作者: june_zhuhui 时间: 2010-9-26 12:59
保留20
作者: june_zhuhui 时间: 2010-9-26 12:59
保留21
作者: june_zhuhui 时间: 2010-9-26 12:59
保留22
作者: june_zhuhui 时间: 2010-9-26 12:59
保留23
作者: june_zhuhui 时间: 2010-9-26 13:00
保留24
作者: june_zhuhui 时间: 2010-9-26 13:01
保留25
作者: june_zhuhui 时间: 2010-9-26 13:01
保留26
作者: june_zhuhui 时间: 2010-9-26 13:01
保留27
作者: june_zhuhui 时间: 2010-9-26 13:01
保留28
作者: june_zhuhui 时间: 2010-9-26 13:02
保留29
作者: june_zhuhui 时间: 2010-9-26 13:02
保留30
作者: june_zhuhui 时间: 2010-9-26 13:02
保留31
作者: june_zhuhui 时间: 2010-9-26 13:03
保留32
作者: june_zhuhui 时间: 2010-9-26 13:03
保留33
作者: june_zhuhui 时间: 2010-9-26 13:03
保留33
作者: june_zhuhui 时间: 2010-9-26 13:03
保留34
作者: june_zhuhui 时间: 2010-9-26 13:04
保留35
作者: june_zhuhui 时间: 2010-9-26 13:04
保留36
作者: june_zhuhui 时间: 2010-9-26 13:04
保留37
作者: june_zhuhui 时间: 2010-9-26 13:04
保留38
作者: june_zhuhui 时间: 2010-9-26 13:04
保留39
作者: june_zhuhui 时间: 2010-9-26 13:05
保留40
作者: june_zhuhui 时间: 2010-9-26 13:05
保留41
作者: june_zhuhui 时间: 2010-9-26 13:05
保留42
作者: june_zhuhui 时间: 2010-9-26 13:05
保留43
作者: june_zhuhui 时间: 2010-9-26 13:05
保留44
作者: june_zhuhui 时间: 2010-9-26 13:06
保留45
作者: june_zhuhui 时间: 2010-9-26 13:06
保留46
作者: june_zhuhui 时间: 2010-9-26 13:06
保留47
作者: june_zhuhui 时间: 2010-9-26 13:06
保留48
作者: june_zhuhui 时间: 2010-9-26 13:06
保留49
作者: june_zhuhui 时间: 2010-9-26 13:07
保留50
作者: atois 时间: 2010-12-14 21:36
本帖最后由 atois 于 2010-12-14 21:37 编辑
加油
作者: cxiaoyi 时间: 2012-1-10 09:34
感谢楼主!能不能先把第四部分自动化测试这部分正文翻译出来啊!!!毕业论文外文翻译的材料啊!谢谢楼主啊!!急啊!!!
作者: miraclej 时间: 2012-1-10 11:22
回复 62# cxiaoyi
一般来说毕业论文外文翻译的材料最好是没有人翻译过的,如果翻译过的最好也不要是雷同的,这本书本身就已经是经典,相信被翻译的次数不会少,加上你直接搬用LZ的翻译,估计你的导师会查到,三思。
作者: miraclej 时间: 2012-1-10 11:24
以前我一直想找这本书的英文版的电子书,无奈找不到。
我发现LZ还真是一丝不苟啊,连简介什么的都翻译了,赞一个!
作者: 统一建模 时间: 2012-2-15 21:14
回复 1# june_zhuhui
说的好,也是刚刚拿到这本书,看着很费劲,不过你说的对,人是要逼着的。
作者: june_zhuhui 时间: 2013-6-17 10:32
我回来了~~~
发现自己在51Testing论坛一共就发了2个帖子,还都是两个没有结束的帖子...
虽然时隔了5年多,但是我还是毅然的回来了...
Start all over again!!!
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) |
Powered by Discuz! X3.2 |