Author: Scott Tilley
Publisher: Springer Nature
ISBN: 3031025474
Category : Technology & Engineering
Languages : en
Pages : 103
Book Description
This book summarizes the current hard problems in software testing as voiced by leading practitioners in the field. The problems were identified through a series of workshops, interviews, and surveys. Some of the problems are timeless, such as education and training, while others such as system security have recently emerged as increasingly important. The book also provides an overview of the current state of Testing as a Service (TaaS) based on an exploration of existing commercial offerings and a survey of academic research. TaaS is a relatively new development that offers software testers the elastic computing capabilities and generous storage capacity of the cloud on an as-needed basis. Some of the potential benefits of TaaS include automated provisioning of test execution environments and support for rapid feedback in agile development via continuous regression testing. The book includes a case study of a representative web application and three commercial TaaS tools to determine which hard problems in software testing are amenable to a TaaS solution. The findings suggest there remains a significant gap that must be addressed before TaaS can be fully embraced by the industry, particularly in the areas of tester education and training and a need for tools supporting more types of testing. The book includes a roadmap for enhancing TaaS to help bridge the gap between potential benefits and actual results. Table of Contents: Introduction / Hard Problems in Software Testing / Testing as a Service (TaaS) / Case Study and Gap Analysis / Summary / Appendix A: Hard Problems in Software Testing Survey / Appendix B: Google App Engine Code Examples / Appendix C: Sauce Labs Code Examples / References / Author Biographies
Hard Problems in Software Testing
Author: Scott Tilley
Publisher: Springer Nature
ISBN: 3031025474
Category : Technology & Engineering
Languages : en
Pages : 103
Book Description
This book summarizes the current hard problems in software testing as voiced by leading practitioners in the field. The problems were identified through a series of workshops, interviews, and surveys. Some of the problems are timeless, such as education and training, while others such as system security have recently emerged as increasingly important. The book also provides an overview of the current state of Testing as a Service (TaaS) based on an exploration of existing commercial offerings and a survey of academic research. TaaS is a relatively new development that offers software testers the elastic computing capabilities and generous storage capacity of the cloud on an as-needed basis. Some of the potential benefits of TaaS include automated provisioning of test execution environments and support for rapid feedback in agile development via continuous regression testing. The book includes a case study of a representative web application and three commercial TaaS tools to determine which hard problems in software testing are amenable to a TaaS solution. The findings suggest there remains a significant gap that must be addressed before TaaS can be fully embraced by the industry, particularly in the areas of tester education and training and a need for tools supporting more types of testing. The book includes a roadmap for enhancing TaaS to help bridge the gap between potential benefits and actual results. Table of Contents: Introduction / Hard Problems in Software Testing / Testing as a Service (TaaS) / Case Study and Gap Analysis / Summary / Appendix A: Hard Problems in Software Testing Survey / Appendix B: Google App Engine Code Examples / Appendix C: Sauce Labs Code Examples / References / Author Biographies
Publisher: Springer Nature
ISBN: 3031025474
Category : Technology & Engineering
Languages : en
Pages : 103
Book Description
This book summarizes the current hard problems in software testing as voiced by leading practitioners in the field. The problems were identified through a series of workshops, interviews, and surveys. Some of the problems are timeless, such as education and training, while others such as system security have recently emerged as increasingly important. The book also provides an overview of the current state of Testing as a Service (TaaS) based on an exploration of existing commercial offerings and a survey of academic research. TaaS is a relatively new development that offers software testers the elastic computing capabilities and generous storage capacity of the cloud on an as-needed basis. Some of the potential benefits of TaaS include automated provisioning of test execution environments and support for rapid feedback in agile development via continuous regression testing. The book includes a case study of a representative web application and three commercial TaaS tools to determine which hard problems in software testing are amenable to a TaaS solution. The findings suggest there remains a significant gap that must be addressed before TaaS can be fully embraced by the industry, particularly in the areas of tester education and training and a need for tools supporting more types of testing. The book includes a roadmap for enhancing TaaS to help bridge the gap between potential benefits and actual results. Table of Contents: Introduction / Hard Problems in Software Testing / Testing as a Service (TaaS) / Case Study and Gap Analysis / Summary / Appendix A: Hard Problems in Software Testing Survey / Appendix B: Google App Engine Code Examples / Appendix C: Sauce Labs Code Examples / References / Author Biographies
Surviving the Top Ten Challenges of Software Testing
Author: William Perry
Publisher: Addison-Wesley
ISBN: 0133489159
Category : Computers
Languages : en
Pages : 242
Book Description
This is the digital version of hte printed book (Copyright © 1997). Software testers require technical and political skills to survive what can often be a lose-lose relationship with developers and managers. Whether testing is your specialty or your stepping stone to a career as a developer, there's no better way to survive the pressures put on testers than to meet the ten challenges described in this practical handbook. This book goes beyond the technical skills required for effective testing to address the political realities that can't be solved by technical knowledge alone. Communication and negotiation skills must be in every tester's tool kit. Authors Perry and Rice compile a "top ten" list of the challenges faced by testers and offer tactics for success. They combine their years of experience in developing testing processes, writing books and newsletters on testing, and teaching seminars on how to test. The challenges are addressed in light of the way testing fits into the context of software development and how testers can maximize their relationships with managers, developers, and customers. In fact, anyone who works with software testers should read this book for insight into the unique pressures put on this part of the software development process. "Somewhere between the agony of rushed deadlines and the luxury of all the time in the world has got to be a reasonable approach to testing."—from Chapter 8 The Top Ten People Challenges Facing Testers Challenge #10: Getting Trained in Testing Challenge #9: Building Relationships with Developers Challenge #8: Testing Without Tools Challenge #7: Explaining Testing to Managers Challenge #6: Communicating with Customers—And Users Challenge #5: Making Time for Testing Challenge #4: Testing What's Thrown Over the Wall Challenge #3: Hitting a Moving Target Challenge #2: Fighting a Lose-Lose Situation Challenge #1: Having to Say No
Publisher: Addison-Wesley
ISBN: 0133489159
Category : Computers
Languages : en
Pages : 242
Book Description
This is the digital version of hte printed book (Copyright © 1997). Software testers require technical and political skills to survive what can often be a lose-lose relationship with developers and managers. Whether testing is your specialty or your stepping stone to a career as a developer, there's no better way to survive the pressures put on testers than to meet the ten challenges described in this practical handbook. This book goes beyond the technical skills required for effective testing to address the political realities that can't be solved by technical knowledge alone. Communication and negotiation skills must be in every tester's tool kit. Authors Perry and Rice compile a "top ten" list of the challenges faced by testers and offer tactics for success. They combine their years of experience in developing testing processes, writing books and newsletters on testing, and teaching seminars on how to test. The challenges are addressed in light of the way testing fits into the context of software development and how testers can maximize their relationships with managers, developers, and customers. In fact, anyone who works with software testers should read this book for insight into the unique pressures put on this part of the software development process. "Somewhere between the agony of rushed deadlines and the luxury of all the time in the world has got to be a reasonable approach to testing."—from Chapter 8 The Top Ten People Challenges Facing Testers Challenge #10: Getting Trained in Testing Challenge #9: Building Relationships with Developers Challenge #8: Testing Without Tools Challenge #7: Explaining Testing to Managers Challenge #6: Communicating with Customers—And Users Challenge #5: Making Time for Testing Challenge #4: Testing What's Thrown Over the Wall Challenge #3: Hitting a Moving Target Challenge #2: Fighting a Lose-Lose Situation Challenge #1: Having to Say No
Developer Testing
Author: Alexander Tarlinder
Publisher: Addison-Wesley Professional
ISBN: 0134291085
Category : Computers
Languages : en
Pages : 629
Book Description
How do successful agile teams deliver bug-free, maintainable software—iteration after iteration? The answer is: By seamlessly combining development and testing. On such teams, the developers write testable code that enables them to verify it using various types of automated tests. This approach keeps regressions at bay and prevents “testing crunches”—which otherwise may occur near the end of an iteration—from ever happening. Writing testable code, however, is often difficult, because it requires knowledge and skills that cut across multiple disciplines. In Developer Testing, leading test expert and mentor Alexander Tarlinder presents concise, focused guidance for making new and legacy code far more testable. Tarlinder helps you answer questions like: When have I tested this enough? How many tests do I need to write? What should my tests verify? You’ll learn how to design for testability and utilize techniques like refactoring, dependency breaking, unit testing, data-driven testing, and test-driven development to achieve the highest possible confidence in your software. Through practical examples in Java, C#, Groovy, and Ruby, you’ll discover what works—and what doesn’t. You can quickly begin using Tarlinder’s technology-agnostic insights with most languages and toolsets while not getting buried in specialist details. The author helps you adapt your current programming style for testability, make a testing mindset “second nature,” improve your code, and enrich your day-to-day experience as a software professional. With this guide, you will Understand the discipline and vocabulary of testing from the developer’s standpoint Base developer tests on well-established testing techniques and best practices Recognize code constructs that impact testability Effectively name, organize, and execute unit tests Master the essentials of classic and “mockist-style” TDD Leverage test doubles with or without mocking frameworks Capture the benefits of programming by contract, even without runtime support for contracts Take control of dependencies between classes, components, layers, and tiers Handle combinatorial explosions of test cases, or scenarios requiring many similar tests Manage code duplication when it can’t be eliminated Actively maintain and improve your test suites Perform more advanced tests at the integration, system, and end-to-end levels Develop an understanding for how the organizational context influences quality assurance Establish well-balanced and effective testing strategies suitable for agile teams
Publisher: Addison-Wesley Professional
ISBN: 0134291085
Category : Computers
Languages : en
Pages : 629
Book Description
How do successful agile teams deliver bug-free, maintainable software—iteration after iteration? The answer is: By seamlessly combining development and testing. On such teams, the developers write testable code that enables them to verify it using various types of automated tests. This approach keeps regressions at bay and prevents “testing crunches”—which otherwise may occur near the end of an iteration—from ever happening. Writing testable code, however, is often difficult, because it requires knowledge and skills that cut across multiple disciplines. In Developer Testing, leading test expert and mentor Alexander Tarlinder presents concise, focused guidance for making new and legacy code far more testable. Tarlinder helps you answer questions like: When have I tested this enough? How many tests do I need to write? What should my tests verify? You’ll learn how to design for testability and utilize techniques like refactoring, dependency breaking, unit testing, data-driven testing, and test-driven development to achieve the highest possible confidence in your software. Through practical examples in Java, C#, Groovy, and Ruby, you’ll discover what works—and what doesn’t. You can quickly begin using Tarlinder’s technology-agnostic insights with most languages and toolsets while not getting buried in specialist details. The author helps you adapt your current programming style for testability, make a testing mindset “second nature,” improve your code, and enrich your day-to-day experience as a software professional. With this guide, you will Understand the discipline and vocabulary of testing from the developer’s standpoint Base developer tests on well-established testing techniques and best practices Recognize code constructs that impact testability Effectively name, organize, and execute unit tests Master the essentials of classic and “mockist-style” TDD Leverage test doubles with or without mocking frameworks Capture the benefits of programming by contract, even without runtime support for contracts Take control of dependencies between classes, components, layers, and tiers Handle combinatorial explosions of test cases, or scenarios requiring many similar tests Manage code duplication when it can’t be eliminated Actively maintain and improve your test suites Perform more advanced tests at the integration, system, and end-to-end levels Develop an understanding for how the organizational context influences quality assurance Establish well-balanced and effective testing strategies suitable for agile teams
Introduction to Software Testing
Author: Paul Ammann
Publisher: Cambridge University Press
ISBN: 1139468677
Category : Computers
Languages : en
Pages : 376
Book Description
Extensively class-tested, this textbook takes an innovative approach to software testing: it defines testing as the process of applying a few well-defined, general-purpose test criteria to a structure or model of the software. It incorporates the latest innovations in testing, including techniques to test modern types of software such as OO, web applications, and embedded software. The book contains numerous examples throughout. An instructor's solution manual, PowerPoint slides, sample syllabi, additional examples and updates, testing tools for students, and example software programs in Java are available on an extensive website.
Publisher: Cambridge University Press
ISBN: 1139468677
Category : Computers
Languages : en
Pages : 376
Book Description
Extensively class-tested, this textbook takes an innovative approach to software testing: it defines testing as the process of applying a few well-defined, general-purpose test criteria to a structure or model of the software. It incorporates the latest innovations in testing, including techniques to test modern types of software such as OO, web applications, and embedded software. The book contains numerous examples throughout. An instructor's solution manual, PowerPoint slides, sample syllabi, additional examples and updates, testing tools for students, and example software programs in Java are available on an extensive website.
Happy About Global Software Test Automation
Author: Hung Quoc Nguyen
Publisher: Happy About
ISBN: 1600050123
Category : Business & Economics
Languages : en
Pages : 128
Book Description
This book addresses the fundamental issue of software testing and helps the reader understand the high-level elements necessary to better execute software test automation and outsourcing initiatives.
Publisher: Happy About
ISBN: 1600050123
Category : Business & Economics
Languages : en
Pages : 128
Book Description
This book addresses the fundamental issue of software testing and helps the reader understand the high-level elements necessary to better execute software test automation and outsourcing initiatives.
Testing iOS Apps with HadoopUnit
Author: Scott Tilley
Publisher: Springer Nature
ISBN: 3031025482
Category : Technology & Engineering
Languages : en
Pages : 83
Book Description
Smartphone users have come to expect high-quality apps. This has increased the importance of software testing in mobile software development. Unfortunately, testing apps—particularly the GUI—can be very time-consuming. Exercising every user interface element and verifying transitions between different views of the app under test quickly becomes problematic. For example, execution of iOS GUI test suites using Apple’s UI Automation framework can take an hour or more if the app’s interface is complicated. The longer it takes to run a test, the less frequently the test can be run, which in turn reduces software quality. This book describes how to accelerate the testing process for iOS apps using HadoopUnit, a distributed test execution environment that leverages the parallelism inherent in the Hadoop platform. HadoopUnit was previously used to run unit and system tests in the cloud. It has been modified to perform GUI testing of iOS apps on a small-scale cluster—a modest computing infrastructure available to almost every developer. Experimental results have shown that distributed test execution with HadoopUnit can significantly outperform the test execution on a single machine, even if the size of the cluster used for the execution is as small as two nodes. This means that the approach described in this book could be adopted without a huge investment in IT resources. HadoopUnit is a cost-effective solution for reducing lengthy test execution times of system-level GUI testing of iOS apps.
Publisher: Springer Nature
ISBN: 3031025482
Category : Technology & Engineering
Languages : en
Pages : 83
Book Description
Smartphone users have come to expect high-quality apps. This has increased the importance of software testing in mobile software development. Unfortunately, testing apps—particularly the GUI—can be very time-consuming. Exercising every user interface element and verifying transitions between different views of the app under test quickly becomes problematic. For example, execution of iOS GUI test suites using Apple’s UI Automation framework can take an hour or more if the app’s interface is complicated. The longer it takes to run a test, the less frequently the test can be run, which in turn reduces software quality. This book describes how to accelerate the testing process for iOS apps using HadoopUnit, a distributed test execution environment that leverages the parallelism inherent in the Hadoop platform. HadoopUnit was previously used to run unit and system tests in the cloud. It has been modified to perform GUI testing of iOS apps on a small-scale cluster—a modest computing infrastructure available to almost every developer. Experimental results have shown that distributed test execution with HadoopUnit can significantly outperform the test execution on a single machine, even if the size of the cluster used for the execution is as small as two nodes. This means that the approach described in this book could be adopted without a huge investment in IT resources. HadoopUnit is a cost-effective solution for reducing lengthy test execution times of system-level GUI testing of iOS apps.
The Complete Guide to Software Testing
Author: William C. Hetzel
Publisher:
ISBN:
Category : Computers
Languages : en
Pages : 300
Book Description
Ed Yourdan called it a bible for project managers. You'll gain a new perspective on software testing as a life cycle activity, not merely as something that happens at the end of coding. An invaluable aid for the development of testing standards and the evaluation of testing effectiveness.
Publisher:
ISBN:
Category : Computers
Languages : en
Pages : 300
Book Description
Ed Yourdan called it a bible for project managers. You'll gain a new perspective on software testing as a life cycle activity, not merely as something that happens at the end of coding. An invaluable aid for the development of testing standards and the evaluation of testing effectiveness.
Systematic Software Testing
Author: Rick David Craig
Publisher: Artech House
ISBN: 9781580537926
Category : Computers
Languages : en
Pages : 584
Book Description
Gain an in-depth understanding of software testing management and process issues that are critical for delivering high-quality software on time and within budget. Written by leading experts in the field, this book offers those involved in building and maintaining complex, mission-critical software systems a flexible, risk-based process to improve their software testing capabilities. Whether your organization currently has a well-defined testing process or almost no process, Systematic Software Testing provides unique insights into better ways to test your software.This book describes how to use a preventive method of testing, which parallels the software development lifecycle, and explains how to create and subsequently use test plans, test design, and test metrics. Detailed instructions are presented to help you decide what to test, how to prioritize tests, and when testing is complete. Learn how to conduct risk analysis and measure test effectiveness to maximize the efficiency of your testing efforts. Because organizational structure, the right people, and management are keys to better software testing, Systematic Software Testing explains these issues with the insight of the authorsOCO more than 25 years of experience."
Publisher: Artech House
ISBN: 9781580537926
Category : Computers
Languages : en
Pages : 584
Book Description
Gain an in-depth understanding of software testing management and process issues that are critical for delivering high-quality software on time and within budget. Written by leading experts in the field, this book offers those involved in building and maintaining complex, mission-critical software systems a flexible, risk-based process to improve their software testing capabilities. Whether your organization currently has a well-defined testing process or almost no process, Systematic Software Testing provides unique insights into better ways to test your software.This book describes how to use a preventive method of testing, which parallels the software development lifecycle, and explains how to create and subsequently use test plans, test design, and test metrics. Detailed instructions are presented to help you decide what to test, how to prioritize tests, and when testing is complete. Learn how to conduct risk analysis and measure test effectiveness to maximize the efficiency of your testing efforts. Because organizational structure, the right people, and management are keys to better software testing, Systematic Software Testing explains these issues with the insight of the authorsOCO more than 25 years of experience."
Improving the Software Testing Skills of Novices During Onboarding Through Social Transparency
Author: Raphael Pham
Publisher: Logos Verlag Berlin GmbH
ISBN: 3832543856
Category : Computers
Languages : en
Pages : 231
Book Description
Inexperienced software developers - such as fresh graduates - shape the future of software engineering as a practice. Supporting these novice developers in becoming high quality engineers is a key objective of our engineering community. Yet, inexperienced developers have considerable trouble in applying the fundamentals of systematic software testing in industrial settings. Gaps in testing skills arise from inherent attributes of systematic testing itself and environmental attributes, such as the educational setting in universities. Frustrated, practitioners have long since devised cost intensive workarounds. In this thesis, this problem situation is qualitatively analyzed in great detail, leveraging insights from three Grounded Theory studies. Employing Everett M. Rogers' 'Theory of the Diffusion of Innovation', strategic improvements to the onboarding situation are presented. Lastly, tool support for the strategies developed in this thesis is presented and evaluated.
Publisher: Logos Verlag Berlin GmbH
ISBN: 3832543856
Category : Computers
Languages : en
Pages : 231
Book Description
Inexperienced software developers - such as fresh graduates - shape the future of software engineering as a practice. Supporting these novice developers in becoming high quality engineers is a key objective of our engineering community. Yet, inexperienced developers have considerable trouble in applying the fundamentals of systematic software testing in industrial settings. Gaps in testing skills arise from inherent attributes of systematic testing itself and environmental attributes, such as the educational setting in universities. Frustrated, practitioners have long since devised cost intensive workarounds. In this thesis, this problem situation is qualitatively analyzed in great detail, leveraging insights from three Grounded Theory studies. Employing Everett M. Rogers' 'Theory of the Diffusion of Innovation', strategic improvements to the onboarding situation are presented. Lastly, tool support for the strategies developed in this thesis is presented and evaluated.
Model-Driven Software Engineering in Practice
Author: Marco Brambilla
Publisher: Morgan & Claypool Publishers
ISBN: 1627059881
Category : Computers
Languages : en
Pages : 209
Book Description
This book discusses how model-based approaches can improve the daily practice of software professionals. This is known as Model-Driven Software Engineering (MDSE) or, simply, Model-Driven Engineering (MDE). MDSE practices have proved to increase efficiency and effectiveness in software development, as demonstrated by various quantitative and qualitative studies. MDSE adoption in the software industry is foreseen to grow exponentially in the near future, e.g., due to the convergence of software development and business analysis. The aim of this book is to provide you with an agile and flexible tool to introduce you to the MDSE world, thus allowing you to quickly understand its basic principles and techniques and to choose the right set of MDSE instruments for your needs so that you can start to benefit from MDSE right away. The book is organized into two main parts. The first part discusses the foundations of MDSE in terms of basic concepts (i.e., models and transformations), driving principles, application scenarios, and current standards, like the well-known MDA initiative proposed by OMG (Object Management Group) as well as the practices on how to integrate MDSE in existing development processes. The second part deals with the technical aspects of MDSE, spanning from the basics on when and how to build a domain-specific modeling language, to the description of Model-to-Text and Model-to-Model transformations, and the tools that support the management of MDSE projects. The second edition of the book features: a set of completely new topics, including: full example of the creation of a new modeling language (IFML), discussion of modeling issues and approaches in specific domains, like business process modeling, user interaction modeling, and enterprise architecture complete revision of examples, figures, and text, for improving readability, understandability, and coherence better formulation of definitions, dependencies between concepts and ideas addition of a complete index of book content In addition to the contents of the book, more resources are provided on the book's website http://www.mdse-book.com, including the examples presented in the book.
Publisher: Morgan & Claypool Publishers
ISBN: 1627059881
Category : Computers
Languages : en
Pages : 209
Book Description
This book discusses how model-based approaches can improve the daily practice of software professionals. This is known as Model-Driven Software Engineering (MDSE) or, simply, Model-Driven Engineering (MDE). MDSE practices have proved to increase efficiency and effectiveness in software development, as demonstrated by various quantitative and qualitative studies. MDSE adoption in the software industry is foreseen to grow exponentially in the near future, e.g., due to the convergence of software development and business analysis. The aim of this book is to provide you with an agile and flexible tool to introduce you to the MDSE world, thus allowing you to quickly understand its basic principles and techniques and to choose the right set of MDSE instruments for your needs so that you can start to benefit from MDSE right away. The book is organized into two main parts. The first part discusses the foundations of MDSE in terms of basic concepts (i.e., models and transformations), driving principles, application scenarios, and current standards, like the well-known MDA initiative proposed by OMG (Object Management Group) as well as the practices on how to integrate MDSE in existing development processes. The second part deals with the technical aspects of MDSE, spanning from the basics on when and how to build a domain-specific modeling language, to the description of Model-to-Text and Model-to-Model transformations, and the tools that support the management of MDSE projects. The second edition of the book features: a set of completely new topics, including: full example of the creation of a new modeling language (IFML), discussion of modeling issues and approaches in specific domains, like business process modeling, user interaction modeling, and enterprise architecture complete revision of examples, figures, and text, for improving readability, understandability, and coherence better formulation of definitions, dependencies between concepts and ideas addition of a complete index of book content In addition to the contents of the book, more resources are provided on the book's website http://www.mdse-book.com, including the examples presented in the book.