1.52k likes | 1.55k Views
Software Testing & QA (I). Zhu.Kerry@gmail .com. Kerry Zhu. Introduce Myself. Zhu.Kerry@gmail.com. A senior programmer - 1990 A professor in HFUT - 1996 Senior QA Director in Cisco-webex Http://blog.csdn.net/KerryZhu. Zhu.Kerry@gmail .com.
E N D
Software Testing & QA(I) Zhu.Kerry@gmail.com Kerry Zhu
Introduce Myself Zhu.Kerry@gmail.com • A senior programmer - 1990 • A professor in HFUT - 1996 • Senior QA Director in Cisco-webex • Http://blog.csdn.net/KerryZhu Zhu.Kerry@gmail.com
How many guys who had testing knowledge or experience?Who can tell us your experience in software testing ?What is Testing? Background survey Zhu.Kerry@gmail.com
What is the software testing… Zhu.Kerry@gmail.com
Traditional industry Zhu.Kerry@gmail.com Verify, check, test, ……
What is testing? Zhu.Kerry@gmail.com It is the process of assessing software functionality and behavior at a range of architectural levels and in a multitude of situations. • (Gosh that sounds impressively academic!)
Testing also is Zhu.Kerry@gmail.com 1. Verification & Validation of Software Products against product specifications and customer requirements 2. Detect the software bugs
TESTING Space Zhu.Kerry@gmail.com Level of detail system integration module unit Accessibility security white box black box robustness performance usability reliability functional behaviour Characteristics
Execution of cases Test cases Additional tests Results Suspected causes Regression tests Evaluation Corrections Identified causes Debugging Test Cycle Zhu.Kerry@gmail.com
Software Testing career path Zhu.Kerry@gmail.com
Chance & Challenge Zhu.Kerry@gmail.com 目前国内软件业的弱点正是发展的前沿 Test EngineerQA/SupervisorProject/Quality Manager
软件测试 vs. 软件开发 Zhu.Kerry@gmail.com
Job marketing Zhu.Kerry@gmail.com 1450 Positions are waiting for … Only in one web site - 51job.cob
Software Testing Career Space Zhu.Kerry@gmail.com • 工作起点高,发展空间大 • 职业寿命长,越老越吃香 • 工作更稳定,不用频繁“跳” • 薪水待遇好 ,“钱”景被看涨 单独设立测试部门、对测试工程师有强烈需求的企业大多是较大规模的软件企业 ,外资企业居多。
Career Path Zhu.Kerry@gmail.com
Back to course Zhu.Kerry@gmail.com
Schedule8 weeks(9/8 – 11/14) Zhu.Kerry@gmail.com 3 credits ; 50 periods - 2 times per week. - Tue. 19:00 - 21:25 - Sat. 14:20 – 16:45 Practice: test in web sites (open source projects), use TA tools End of formal lessons: 11/7 Practice Presentation: 11/10, 11/14 Examination : TBD
Course score Zhu.Kerry@gmail.com Be composed of 4 parts: • Class duty- 5% • Regular exercise - 10% • Practice – semester assignment- 30% • Final Examination - 55%
Book 1-2 Zhu.Kerry@gmail.com 软件测试方法和技术 ¥36.0出版社: 清华大学出版社 ISBN:7-302-11133-2高等学校教材·软件工程
Book 3 Zhu.Kerry@gmail.com
Book 4 Zhu.Kerry@gmail.com
Software Testing (II) Zhu.Kerry@gmail.com Part 1 The Big Picture1 Software Testing Background2 The Software Development Process3 The Realities of Software Testing Part II Tesing Fundamentals4 Examining the Specification5 Testing the Software with Blinders On6 Examining the Code7 Testing the Software with X-Ray Glasses Part III Applying Your Tesing Skills8 Configuration Testing9 Compatibility Testing10 Foreign-Language Testing11 Usability Tesing12 Testing the Documentation13 Testing for Software Security14 Website Testing Part IV Supplementing Your Testing15 Automated Testing and Test Tools16 Bug Bashes and Beta Testing Part V Working with Test Documentation17 Planning Your Test Effort18 Writing and Tracking test Cases19 Reporting What You Find20 Measuring Your Success Part VI The Future21 Software Quality Assurance22 Your Career as a Software Tester
软件测试技术和方法 Zhu.Kerry@gmail.com 第1章 软件及其开发过程 2 第2章 软件测试的基本概念和方法 20 第3章 质量保证与测试策略 50 第4章 软件测试依据和规范 64 第5章 单元测试 86 第6章 集成测试和系统测试 105 第7章 验收测试 129 第8章 面向对象软件的测试 142 第9章 基于应用服务器的测试 158 第10章 软件本地化测试 183 第11章 软件测试自动化 201 第12章 组织和管理测试团队 236 第13章 测试环境的建立 266 第14章 软件测试用例的设计 276 第15章 报告所发现的软件缺陷 304 第16章 软件测试和质量分析报告 321 第17章 软件测试项目管理 342 附录A 软件测试的英文术语及中文解释 375 ... 附录D 测试计划模板 413 附录E C++ Inspection Checklist 425 附录F Java Code Inspection Checklist 428 A very long list
Practice-1 Zhu.Kerry@gmail.com
Practice-2 Zhu.Kerry@gmail.com
Open Source Test Tools http://seleniumhq.org/ http://jakarta.apache.org/jmeter/ http://www.autoitscript.com/autoit3/ http://sourceforge.net/index.php http://www.opensourcetesting.org/
Business Test Tools • HP QuickTest Professional • LoadRunner • Rational Functional Tester • Rational Performance Tester • WebKing • ……
Schema Zhu.Kerry@gmail.com I. THE BIG PICTURE. ( 6 学时) II. TESTING FUNDAMENTALS. ( 8 学时) III. APPLYING YOUR TESTING SKILLS. ( 10 学时) IV. SUPPLEMENTING YOUR TESTING. ( 7 学时) V. WORKING WITH TEST DOCUMENTATION. ( 8 学时) VI. THE FUTURE. ( 3 学时) Practice Presentation ( 6 学时) Final Examination ( 2 学时)
Much Benefits from this course Zhu.Kerry@gmail.com • You will benefits from this course as • - Test engineer • QA Engineer/Manager • The member of SEPG • Project manager • Programmer • Software Analyst • Software Consultant • ……
Goals for this course Zhu.Kerry@gmail.com • How Dose Software testing fit into the software development process • Basic and advanced software testing techniques • Applying testing skills to common testing tasks • Improving test efficiency with automation • Planning and documenting your test efforts
Goals for this course (2) Zhu.Kerry@gmail.com • Effectively reporting the problems you find • Measuring your test efforts and your product’s progress • Knowing the differences between testing and quality assurance (QA) • Getting the thought and methodology in QA from Silicon Valley of USA • Capture the experience accumulated in testing & QA work for many years
Kick off … Zhu.Kerry@gmail.com
Part 1 The Big Picture Zhu.Kerry@gmail.com 1. Software Testing Background a. What is the software defect? b. Why do bugs occur? c. The Cost of bugs? d. What exactly does a tester do? e. The making of a software tester 2. The Software Development Process a. What is a software product? b. Software Project staff c. Software Lifecycle Models 3. The Realities of Software Testing a. Testing Principles b. Terms and Definitions for software testing
Ch.1 Software Testing Background Zhu.Kerry@gmail.com a. What is the software defect? 1. Software Error Case Studies 2. Terms for Software Failures 3. A formal Definition for Software Defect b. Why do bugs occur? c. The Cost of bugs? d. What exactly does a tester do? The goal of a software tester is to find bugs, find them As Early As Possible, and make sure they get fixed. e. The making of a software tester
Who like to tell us the serious error cases happened in software ? Zhu.Kerry@gmail.com
Pentium division bug Zhu.Kerry@gmail.com (4195835 / 3145727) * 3145727 – 4195835 0 Test engineers found bug Management decided it was not severe A user reported it 10/30/1994, Intel attempted to play down the bug. Offered to replace chips if you could prove you were affected Ultimately, they apologized; replaced all chips - cost $450 million. Interestingly, 1.13 MHz Pentium III caused software freezes.
NASA’s Mars polar lander Zhu.Kerry@gmail.com 1999, the lander disappeared during landing attempt A switch on the landing gear’s foot set a bit intended to cut off fuel to the landing thruster at touch down; But the switch was tripped already when the legs snapped open for landing • Team I tested the leg fold-down procedure, never checked the bit as it was not in the area • Team II tested the rest of the landing procedure; reset the computer, hence clearing the bit • Both parts worked perfectly separately, but failed when they needed to work together --- and that was never tested! They never noticed that the touch-down bit remained set after fold-down
Bug Zhu.Kerry@gmail.com
Story • Call defect as a “bug”? 故事发生在1945年9月的一天,一个炎热的下午,机房是一间第一次世界大战时建造的老建筑,没有空调,所有窗户都敞开着。Hopper正领着她的研究小组夜以继日地工作,研制一台称为“MARK II”的计算机,它使用了大量的继电器(电子机械装置,那时还没有使用晶体管),一台不是纯粹的电子计算机。突然,MARK II死机了。研究人员试了很多次还是启动不来,然后就开始用各种方法找问题,看问题究竟出现在哪里,最后定位到板子F第70号继电器出错。Hopper观察这个出错的继电器,惊奇地发现一只飞蛾躺在中间,已经被继电器打死。她小心地用摄子将蛾子夹出来,用透明胶布帖到“事件记录本”中,并注明“第一个发现虫子的实例”,然后计算机又恢复了正常。从此以后,人们将计算机错误戏称为臭虫(Bug),而把找寻错误的工作称为“找臭虫”(Debug)。Grace Hopper的事件记录本,连同那个飞蛾,现在都陈列在美国历史博物馆中。
Patriot missile defense 1991 Zhu.Kerry@gmail.com The Patriot missile defense system failed to defend against several missiles A small timing error in the system’s clock accumulated so that after 14 hours, the tracking system was no longer accurate In the attack on Dhahran, KSA, the system had been in operation for over 100 hours The system was mobile, so the developers did not expect it to remain in one place for 14 hours
Millennium bug (Y2K) Zhu.Kerry@gmail.com • In the 1970s and on, programmers saved precious memory and disk space by storing years in a two-digit format • They (we) never dreamed that their programs would still be running in 2000
A non-horror story: The random number generator Zhu.Kerry@gmail.com • Worked just fine for most simulation apps • Simulate a solitaire card game that was very difficult to win • In the simulation, you never won • It turned out that the random number generator’s cycle was way too short • There was a sign error in the assembler subroutine Return
Bug Zhu.Kerry@gmail.com
Radiation machine kills four:1985 to 1987 Zhu.Kerry@gmail.com Faulty software in a Therac-25 radiation-treatment machine resulted in several cancer patients receiving lethal overdoses of radiation. Four patients died. An investigation by independent scientists found that accidents occurred even after Atomic Energy of Canada Limited (AECL) thought it had fixed particular bugs. They wrote in their report. "The basic mistakes here involvedpoor software-engineering practicesand building a machine thatrelies on the software for safe operation."
AT&T long distance service fails: 1990 Zhu.Kerry@gmail.com Switching errors in AT&T's call-handling computers caused the company's long-distance network to go down for nine hours, the worst of several telephone outages in the history of the system. The meltdown affected thousands of services and was eventually traced to a single faulty line of code.
Disney’s “Lion King Animated Storybook”1994 Zhu.Kerry@gmail.com • Disney released its first multimedia CD-ROM for children. • A major ad campaign touting it as “the game to buy”. • After Christmas Day, many angry parents were on the phone to Disney with crying children in the background. • The problem was the game worked on only a few platforms and nothing was said about this on the wrapper as Disney hadn’t realized the problem.
Bug Zhu.Kerry@gmail.com
New Denver airport misses its opening: 1995 Zhu.Kerry@gmail.com The Denver International Airport was intended to be a state-of-the-art airport, with a complex, computerized baggage-handling system and 5,300 miles of fiber-optic cabling. Unfortunately, bugs in the baggage system caused suitcases to be chewed up and drove automated baggage carts into walls. The airport eventually opened 16 months late, $3.2 billion over budget, and with a mainly manual baggage system.
Intuit's MacInTax leaks financial secrets: 1995 Zhu.Kerry@gmail.com Intuit's tax software for Windows and Macintosh has suffered a series of bugs, including several that prompted the company to pledge to pay any resulting penalties and interest. The scariest bug was discovered in March 1995: the code included in a MacInTax debug file allowed Unix users to log in to Intuit's master computer, where all MacInTax returns were stored. From there, the user could modify or delete returns. Intuit later ended up winning BugNet's annual bug-fixaward in 1996 by responding to bugs faster than any other major vendor.