160 likes | 455 Vues
Automation Of Software Test. Fan Xu. Agenda. What is Automation Test? Different type of test tools. Advantages of using dynamic test tools Functions that test tools support Whether to use Automation Test Do we need Automation Test in 577 projects?. What is Automation Test?.
E N D
Automation Of Software Test Fan Xu
Agenda • What is Automation Test? • Different type of test tools. • Advantages of using dynamic test tools • Functions that test tools support • Whether to use Automation Test • Do we need Automation Test in 577 projects?
What is Automation Test? • First impression: The automated execution of tests. • In Test-Goal, test automation is defined as follows: Test automation is the use of test tools that support the test process and help the tester find errors. • Different types of test tools • Dynamic tools • Static tools • Supporting tools
Dynamic Tools • Dynamic test tools are used for dynamic tests, which are tests in which the system is actually used.
Advantages of Using Dynamic Test Tools • Cost Saving • Tests can take up too much time when run manually • Security tests • Reliability/ Endurance tests • Result management • Generate report • Comparing Results Help with comparing the observed results with the expected results objectively.
Advantagesof Using Dynamic Test Tools (Cont’d) • Additional Testing Possibilities Some tests are almost impossible to run manually • Testing an object that does not have a user interface. • Testing a smart card • Module tests • Log files To record information that is (virtually) impossible to obtain manually.
Static Test Tools • Static test tools are used in static tests: the tests that do not require the program to be started. Static test tools can focus on the software or the documentation. • Tools to measure the complexity and the structure of the code • Tools to check the correctness of the code • A spell checker for the system documentation
Supporting Tools In addition to the tools that help run the tests or analyze data, there are also test tools that support the test process in general, such as: • Error logging tools (bug tracking) • Planning tools • Tools to create test designs • Tools that can be used to report the results of manual or automated test runs (dashboard) • Configuration management tools
Test Automation: Yes/No • The decision whether using automation test based on a cost-benefit analysis. • License fees • The cost of developing test scripts and/or tools • The cost of maintaining test scripts and/or tools • ROI-Return on Investment. • Estimated at the beginning of the project • Extra research on design and develop(or select) a good testware architecture. • To learn and understand the success and failure factors • Find a solution tailored to your unique situation. • To communicate the plan, progress, and ways of using the automation.
For our own • Normally the scale of teams and projects are not very big. • Limited time and budget. • Team members are all familiar with business work flow and the code. • Large scale business test tools may not suitable. • Normally it’s not worthy to development the whole new test tool by the team. • Easy to do module test and unit test during the development. • As agile development teams, the automation also needs to be responsive to change.
For Our Own (Cont’d) • A rule of thumb is that if the automated tests are run less than five times, the investment is not earned back. • Make sure the tests are worth having • Tests that are boring for people to perform, that are mundane and repetitious. • Tests that are not suitable for manual test. • Plan early
References • Choosing a test automation framework, Michael Kelly, Software Engineer, QA, Liberty Mutual • Experiences of Test Automation: Case Studies of Software Test Automation, Dorothy Graham; Mark Fewster. • TESTGOAL, 2008, IV, 277-292, DOI: 10.1007/978-3-540-78829-4_16