创业管理(李雪灵)pa.ppt

上传人:wuy****n92 文档编号:74896587 上传时间:2023-03-01 格式:PPT 页数:35 大小:484.50KB
返回 下载 相关 举报
创业管理(李雪灵)pa.ppt_第1页
第1页 / 共35页
创业管理(李雪灵)pa.ppt_第2页
第2页 / 共35页
点击查看更多>>
资源描述

《创业管理(李雪灵)pa.ppt》由会员分享,可在线阅读,更多相关《创业管理(李雪灵)pa.ppt(35页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、Part IV:Supplementing Your Testing SE-307 Software Testing ContentsnAutomated Testing and Test ToolsnBug Bashes and Beta TestingPart IV:Supplementing Your Testing Automated Testing and Test ToolsContentsContentsnThe Benefits of Automation and ToolsnTest ToolsnSoftware Test AutomationnRandom Testing:

2、Monkeys and GorillasnRealities of Using Test Tools and AutomationThe Benefits of Automation and ToolsThe Benefits of Automation and ToolsnBackgroundnRegression testing:This process of rerunning your tests is known as regression testing.nThe work of regression testing is enormousnSoftware test tools

3、and automation can help solve this problem by providing a more efficient means to run your tests than by manual testing.The Benefits of Automation and ToolsThe Benefits of Automation and ToolsnThe principal attributes of tools and automation arenSpeed.nEfficiency.nAccuracy and Precision.nResource Re

4、duction.nSimulation and Emulation.nRelentlessness.nNOTEnSoftware test tools arent a substitute for software testers they just help software testers perform their jobs better.Test ToolsTest ToolsnAs a software tester youll be exposed to a wide range of testing tools.The types of tools that youll use

5、are based on the type of software that youre testing and whether youre performing black-box or white-box tests.nImportant distinction between two types of tools non-invasive and invasive.nIf a tool is used only to monitor and examine the software without modifying it,its considered non-invasive.nIf,

6、however,the tool modifies the program code or manipulates the operating environment in any way,its invasive.Test ToolsTest ToolsnThe major classes of testing tools and how theyre used.nViewers and Monitors nA viewer or monitor test tool allows you to see details of the softwares operation that you w

7、ouldnt normally be able to see.nCode coverage analyzers,communications analyzer,the code debuggers that come with most compilers.Test ToolsTest ToolsnDrivers nDrivers are tools used to control and operate the software being tested.nBatch file,replace the keyboard and mouse of the system being tested

8、 with an additional computer.nStubs nStubs,like drivers,were mentioned in Chapter 7 as white-box testing techniques.nEmulatorTest ToolsTest ToolsnStress and Load Tools nThe Stress program allows you to individually set the amounts of memory,disk space,files,and other resources available to the softw

9、are running on the machine.nLoad tools are similar to stress tools in that they create situations for your software that might otherwise be difficult to create.nInterference Injectors and Noise GeneratorsnTheyre similar to stress and load tools but are more random in what they do.Test ToolsTest Tool

10、snAnalysis Tools nWord processing softwarenSpreadsheet softwarenDatabase softwarenFile comparison softwarenScreen capture and comparison softwarenDebuggernBinary-hex calculatornStopwatchnVCR or cameraSoftware Test AutomationSoftware Test AutomationnMacro Recording and PlaybacknThe most basic type of

11、 test automation is as you run recording your keyboard and mouse actions your tests for the first time and then playing them back when you need to run them again.nMacro recorders and players are a type of driver tool.Drivers are tools used to control and operate the software being tested.nOn the Mac

12、 you can use QuicKeys;on Windows the shareware program Macro Magic is a good choice.nBe careful:nThe biggest problem is lack of verification.nA slight change in the GUI could throw off your captured steps.Software Test AutomationSoftware Test AutomationnProgrammed Macros nCreate programmed macros by

13、 programming simple instructions for the playback system to follow.nProgrammed macros such as this one have some real advantages over recorded macros.Although they still cant perform verification of the test results,they can pause their execution to prompt the tester(see Figure 15.8)with an expected

14、 result and a query for her to okay whether the test passed or failed.Software Test AutomationSoftware Test AutomationnProgrammed Macros(continue)nListing 15.1.A Simple Macro That Performs a Test on the Windows Calculatorn1:Calculator Test#2n2:n3:n4:123-100=n5:n6:Software Test AutomationSoftware Tes

15、t AutomationnProgrammed Macros(continue)nYoure still missing two important pieces,though,to perform complex testing.nProgrammed macros are limited to straight-line execution they can only loop and repeat.Variables and decision statements that youd find in a regular programming language arent availab

16、le.nYou also dont have the ability to automatically check the results of your test.For these,you need to move to a comprehensive automated testing tool.Software Test AutomationSoftware Test AutomationnFully Programmable Automated Testing Tools nThe most important feature that comes with these automa

17、tion tools is the ability to perform verification,actually checking that the software is doing whats expected.There are several ways to do this:nScreen captures.nControl values.nFile and other output.Software Test AutomationSoftware Test AutomationnFully Programmable Automated Testing Tools(continue

18、)nTo get more information about several of the popular test automation products available,visit the following websites:nSoftware Development Technologies at nMercury at nSegue Software at Random Testing:Monkeys and GorillasRandom Testing:Monkeys and GorillasnAnother type of automated testing,though,

19、isnt designed to help run or automatically run test cases.Its goal is to simulate what your users might do.That type of automation tool is called a test monkey.nWhen your software is released to the public,it will have thousands or possibly millions of people using it.Despite your best efforts at de

20、signing test cases to find bugs,some bugs will slip by and be found by those users.Random Testing:Monkeys and GorillasRandom Testing:Monkeys and GorillasnDumb MonkeysnIt just clicks or types randomly.n例:1:RANDOMIZE TIMERn 2:FOR i=1 TO 10000n 3:PLAY“CLICK”+STR$(INT(RND*640)+”,”+STR$(INT(RND*480)+”n 4

21、:PLAY CHR$(RND*256)n 5:NEXT i Random Testing:Monkeys and GorillasRandom Testing:Monkeys and GorillasnDumb MonkeysnIt doesnt seem to make sense that simple random clicking and typing could find a bug,but it does for a couple reasons:nGiven enough time and attempts,just like the monkeys writing Shakes

22、peare,the random inputs will eventually stumble onto a magic sequence that the programmers and testers didnt think of.nA dumb monkey,with its continuous repetition and use,can expose bugs such as memory leaks that might not occur until many hours or days of normal use.Random Testing:Monkeys and Gori

23、llasRandom Testing:Monkeys and GorillasnSemi-Smart Monkeys nDumb monkeys lack a few important features(如故障的重现),though,that would make them even more effective.Adding these features(如日志或屏幕录像)raises your monkeys IQ a bit,making him semi-smart.nThe solution is to add logging to your monkey so that ever

24、ything it does is recorded to a file.When the monkey finds a bug,you need only to look at the log file to see what it was doing before the failure.nIts also a good idea to program your monkey to operate only on the software youre testing.nAnother good feature to make your monkey semi-smart is crash

25、recognition.Random Testing:Monkeys and GorillasRandom Testing:Monkeys and GorillasnSmart Monkeys nSuch a monkey takes the effectiveness of random testing from his less-intelligent brothers and adds to that an awareness of his surroundings.He doesnt just pound on the keyboard randomly he pounds on it

26、 with a purpose.nA smart monkey can examine data as it goes,checking the results of its actions and looking for differences from what it expects.If you programmed in your test cases,the smart monkey could randomly execute them,look for bugs,and log the results.Realities of Using Test Tools and Reali

27、ties of Using Test Tools and AutomationAutomationnTest automation isnt a panacea.When it is properly planned and executed it can make your testing immensely more efficient and find bugs that would have otherwise gone undiscovered.nHowever,countless test automation efforts have been abandoned and cos

28、t their projects dearly when they went astray.Realities of Using Test Tools and Realities of Using Test Tools and AutomationAutomationnYou should consider these important issues before you begin using the techniques described in this chapter:nThe software changes.nTheres no substitute for the human

29、eye and intuition.nVerification is hard to do.nIts easy to rely on automation too much.nDont spend so much time working on tools and automation that you fail to test the software.nIf youre writing macros,developing a tool,or programming a monkey,youre doing development work.nSome tools are invasive

30、and can cause the software being tested to improperly fail.nHighlights of this chapter includenWhy test tools and automation are necessarynExamples of simple test tools you can usenHow using tools migrates to test automationnHow to feed and care for monkeysnWhy test tools and automation arent a pana

31、ceaPart IV:Supplementing Your Testing Bug Bashes and Beta Testing Bug Bashes and Beta TestingBug Bashes and Beta TestingnHaving Other People Test Your SoftwarenTest SharingnBeta TestingnOutsourcing Your TestingHaving Other People Test Your Having Other People Test Your SoftwareSoftwarenYoure likely

32、under a tight schedule,you find as many bugs as possible in the time you have,but someone else can come in,test the same code,and find additional bugs.nThere are several reasons and solutions for it:nHaving another set of eyes look at the software helps break the pesticide paradox.nSimilarly,people

33、dont just see differently from each other,they go about their testing differently,too.nHaving someone assist you in your testing helps eliminate boredom.nWatching how someone else approaches a problem is a great way to learn new testing techniques.Test Sharing Test Sharing nOne common approach is to

34、 simply swap test responsibilities with another tester for a few hours or a few days.Think of it as You run my tests and Ill run yours.nA fun way to share the testing tasks is to schedule a bug bash.A bug bash is a period of time(usually a couple hours)in which the entire test team stops their norma

35、lly assigned testing tasks to participate in the bash.In a bug bash,a specific area of the software is selected and all the testers concentrate their testing on that one area or set of features.nA bug bash could determine if the bugs have been missed by normal testing or if its just well written cod

36、e.nIts a good idea to get your product support team helping you test the product early in the design cycle to help identify and fix usability bugs.Beta TestingBeta TestingnBeta testing is the term used to describe the external testing process in which the software is sent out to a select group of po

37、tential customers who use it in a real-world environment.nBeta testing usually occurs toward the end of the product development cycle and ideally should just be a validation that the software is ready to release to real customers.Beta TestingBeta TestingnThere are several things to think about when

38、planning for or relying on a beta test:nWho are the beta testers?nSimilarly,how will you know if the beta testers even use the software?nBeta tests can be a good way to find compatibility and configuration bugs.nUsability testing is another area that beta testing can contribute to if the participant

39、s are well chosen a good mix of experienced and inexperienced users.nBesides configuration,compatibility,and usability,beta tests are surprisingly poor ways to find bugs.nA beta test program can take up a lot of a testers time.Outsourcing Your Testing Outsourcing Your Testing nConfiguration and comp

40、atibility testing are typically good choices for outsourcing.nLocalization testing is another example that often lends itself to outsourcing.nThe success,or failure,of the outsourcing job may well depend on you.Heres a list of things to consider and to discuss with your test manager or project manag

41、er to help make the job run more smoothly:nWhat exactly are the testing tasks that the testing company is to perform?Who will define them?Who will approve them?nWhat schedule will they follow?Who will set the schedule?What happens if the deadline is missed?Outsourcing Your TestingOutsourcing Your Te

42、stingnWhat deliverables are you to provide to the testing company?The softwares specification,periodic software updates,and test cases are some examples.nWhat deliverables are they to provide to you?A list of the bugs they find would be the minimum.nHow will you communicate with them?Phone,email,Int

43、ernet,central database,daily visit?Who are the points of contact at both ends?nHow will you know if the testing company is meeting your expectations?How will they know if theyre meeting your expectations?nHighlights of this chapter includenWhy its important to have other people testnHow you can get others looking at your softwarenWhat beta testing is and how testers are involvednHow to effectively outsource your test work

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com