000 02384nam a2200277Ia 4500
000 02859nam a22003135i 4500
001 978-3-031-22057-9
003 DE-He213
005 20240319120849.0
007 cr nn 008mamaa
008 230324s2023 sz | s |||| 0|eng d
020 _a9783031220579
_9978-3-031-22057-9
082 _a620.00285
100 _aParsa, Saeed.
_930930
245 _aSoftware Testing Automation
_cby Saeed Parsa.
_h[electronic resource] :
250 _a1st ed. 2023.
260 _aCham
_bSpringer International Publishing
_c2023
300 _aXXIV, 580 p. 741 illus., 668 illus. in color.
_bonline resource.
520 _aThis book is about the design and development of tools for software testing. It intends to get the reader involved in software testing rather than simply memorizing the concepts. The source codes are downloadable from the book website. The book has three parts: software testability, fault localization, and test data generation. Part I describes unit and acceptance tests and proposes a new method called testability-driven development (TsDD) in support of TDD and BDD. TsDD uses a machine learning model to measure testability before and after refactoring. The reader will learn how to develop the testability prediction model and write software tools for automatic refactoring. Part II focuses on developing tools for automatic fault localization. This part shows the reader how to use a compiler generator to instrument source code, create control flow graphs, identify prime paths, and slice the source code. On top of these tools, a software tool, Diagnoser, is offered to facilitate experimenting with and developing new fault localization algorithms. Diagnoser takes a source code and its test suite as input and reports the coverage provided by the test cases and the suspiciousness score for each statement. Part III proposes using software testing as a prominent part of the cyber-physical system software to uncover and model unknown physical behaviors and the underlying physical rules. The reader will get insights into developing software tools to generate white box test data. .
650 _aData Engineering.
_930931
650 _aEngineering
_930932
650 _aSoftware engineering.
_930933
650 _aSoftware Engineering.
_930934
856 _uhttps://doi.org/10.1007/978-3-031-22057-9
942 _cEBK
_2ddc
999 _c15171
_d15171