4:56 AM

Software Testing

A Tester's Guide to .NET Programming

A Tester's Guide to .NET Programming focuses solely on applied programming techniques for testers. You will learn how to write simple automated tests, enabling you to test tools and utilities. You will also learn about the important concepts driving modern programming today, like multitier applications and object-oriented programming. More businesses are adopting .NET technologies, and this book will equip you to assess software robustness and performance.

Whether you're an experienced programmer who's unfamiliar with testing concepts, or you're an experienced tester unversed in VB .NET and C#, the included real-world tips and example code will help you start your projects. Also included are review questions and hands-on exercises to help you retain knowledge. Additionally, the book features examples and quick language tutorials for both C# and VB .NET.

Download

Software Testing Fundamentals : Methods and Metrics


Recommended book for software test engineers. Since the author also discusses political aspects of testing in today's real business world, where the CFO rather than the CEO rules, this is an interesting book for other test engineers, too.

One of the main topics of the book are what the author calls MITs, the "most important tests". The MITs are determined using various methods, including path analysis, boundary value analysis, expert interviews, and test ranking.

While there are nice explanations of the other methods, my first impression was that the author's explanation of her ranking method was lacking technical details. Actually, that ranking method is rather simple. Use of consistent terminology and some detracting errors in examples just make it more difficult than necessary for the reader to

Download

xUnit Test Patterns: Refactoring Test Code

Automated testing is a cornerstone of agile development. An effective testing strategy will deliver new functionality more aggressively, accelerate user feedback, and improve quality. However, for many developers, creating effective automated tests is a unique and unfamiliar challenge.

xUnit Test Patterns is the definitive guide to writing automated tests using xUnit, the most popular unit testing framework in use today. Agile coach and test automation expert Gerard Meszaros describes 68 proven patterns for making tests easier to write, understand, and maintain. He then shows you how to make them more robust and repeatable--and far more cost-effective.

Loaded with information, this book feels like three books in one. The first part is a detailed tutorial on test automation that covers everything from test strategy to in-depth test coding. The second part, a catalog of 18 frequently encountered "test smells," provides trouble-shooting guidelines to help you determine the root cause of problems and the most applicable patterns. The third part contains detailed descriptions of each pattern, including refactoring instructions illustrated by extensive code samples in multiple programming languages.

Download

Software Testing Techniques 2E

Every professional and commercial software development organization spends a great deal of time in the testing and validation of their software. The testing process, driven either by legal or financial requirements, can be expensive and may thwart the planned deployment of the application. Many studies indicate that the testing process can even take three times as long as the actual coding itself. Indeed, software development done under the ISO 9000 or FDA auspices can be extremely time intensive.

This book gives a lengthy and fairly comprehensive overview of software testing that emphasizes formal models for testing. In the introduction, the author gives a general overview of the testing process and the reasons and goals for testing. He carefully distinguishes between testing and debugging, and advocates these as separate activities. Testing according to the author is done to find bugs; whereas debugging is done to find the origin of the bugs and fix them. The author characterizes testing as either functional or structural. Functional testing treats the program from the user's point of view, with inputs given to the program, and then the outputs are checked for conformance to a specified reference. Structural testing examines how the program is implemented, in terms of programming style, design, etc. The notion of an oracle is defined as any program or process that specifies the expected outcome of a collection of tests. The author clearly identifies and characterizes the different types of tests that arise in development organizations, such as unit testing, regression testing, stress testing, and integration testing.

Dwonload

Effective Software Test Automation: Developing an Automated Software Testing Tool


Did you know that the U.S. loses $59.5 billion per year due to inadequate software testing? With this revolutionary book, that's about to end! Applied Software Test Automation teaches you how to build a fully automated testing tool that you can immediately use for your software development projects. Simply feed the software under test, get the test result, and fix the bugs. You can even use your preferred languages for developing the testing tool. Coverage includes: CodeDom techniques for generating test scripts; using XML and spreadsheets for test data stores; and detail review of Reflection. All source code presented in the book is derived from real-world scenarios.

Download

Unit Testing in C# with Nunit

Learn how to improve your C# coding skills using unit testing. Despite it's name, unit testing is really a coding technique, not a testing technique. This book shows how to write tests, but more importantly, goes where other books fear to tread and gives you concrete advice and examples of what to test. Discover the tricky hiding places where bugs breed, and how to catch them using the freely available NUnit framework. It's easy to learn how to think of all the things in your code that are likely to break. We'll show you how with helpful mnemonics, summarized in a handy tip sheet (also available from our website). But the best part is that you don't need to adopt Extreme Programming, or Test-Driven Development, or change your whole development process in order to reap the proven benefits of unit testing, the pragmatic way

Download

Fit for Developing Software : Framework for Integrated Tests (Robert C. Martin)

The Fit open source testing framework brings unprecedented agility to the entire development process. Fit for Developing Software shows you how to use Fit to clarify business rules, express them with concrete examples, and organize the examples into test tables that drive testing throughout the software lifecycle. Using a realistic case study, Rick Mugridge and Ward Cunningham--the creator of Fit--introduce each of Fit's underlying concepts and techniques, and explain how you can put Fit to work incrementally, with the lowest possible risk. Highlights include
*Integrating Fit into your development processes
*Using Fit to promote effective communication between businesspeople, testers, and developers
*Expressing business rules that define calculations, decisions, and business processes
*Connecting Fit tables to the system with "fixtures" that check whether tests are actually satisfied
*Constructing tests for code evolution, restructuring, and other changes to legacy systems
*Managing the quality and evolution of tests

Download

Systematic Software Testing

Craig (a test manager and consultant) and Jaskiel (an information manager) outline a flexible process for improving software testing capabilities. Focusing on the prevention and early discovery of defects, the testing process described parallels the software development lifecycle. Instructions describe what to test, setting priorities, and completion, with attention to the use of test plans, design, and metrics. Risk analysis and test effectiveness measurement are also discussed

Download

Effective software testing: 50 specific ways to improve your testing

Many of the examples are in the realm of the obvious, but not always clearly implemented. For example, number 17 is "Verify that the system supports testability" and number 31is "Know the different types of testing-support tools." In the case of 17, the word system is being used to describe large projects and the topic deals with verifying that it is possible to test the integrated system by tracking the source of errors and how the components interact with each other. Tracking down errors that arise when systems are integrated is very hard, and in general it is necessary to make the plans on how to track down such errors when the architecture for the system is being designed. Therefore, the point, which seems obvious, is in fact a very critical one.

Determining what software testing tools are available is another very critical step in the effective, efficient testing of software. The enormous number of different pathways through modern software makes it impossible to use even the largest army of testers to check them all. Therefore, the only way to provide reasonable coverage of the options is to let other software examine it. Tools such as memory and other system resource checkers, source code scanners that look for "obvious" bugs, programs that generate test data sets either randomly or clustered about most likely values, and test generators can sometimes provide valuable assistance in cleaning code. When working in C/C++, I found a code scanner to be extremely helpful, and wrote a simple one some time ago. It searched for instances of a single "=" in Boolean expressions, semicolons immediately after if, while and for loops, and places where the delete command was used on pointers that might point to an array. It was simple, but it did find some bugs that quite likely would have taken me hours to find.
The testing principles are organized into ten categories:
* Requirements phase.
* Test planning.
* The testing team.
* The system architecture.
* Test design and documentation.
* Unit testing.
* Automated testing tools.
* Automated testing: Selected best practices.
* Nonfunctional testing.
* Managing test execution.

As you can see, the concept of testing is included from the very first stages of the project. This is essential, as it is very possible to incorporate something into the design that will make effective testing difficult or even impossible. Experienced software testers should be included in the planning from the first day of construction.

Download

Effective GUI Test Automation: Developing an Automated GUI Testing Tool

Software test engineers: here is the first book to teach you how to build and use a fully automated GUI testing tool. Simply feed the GUI component under test, get the results, and fix the bugs. While the book's examples are written in C#, you can use your preferred language for developing the testing tool and download the complete tool from Sybex.com. The sole book that covers GUI test automation using CodeDom, Reflection, and data stores, here is a perfect complement to Kanglin Lee's previous book from Sybex--Effective Software Test Automation. This is a unique product--and it works!

Download

Practical software testing: a process-oriented approach

The text is unique in its approach to presenting the field of software testing. It introduces testing concepts that are managerial, technical, and process-oriented in nature. Process is emphasized because of its essential role in all engineering disciplines. The widespread application of the Capability Maturity Model (CMM) and other process improvement models attests to the importance of process in today¡¯s software development industry. Unfortunately, discussions of this topic are lacking in the majority of books on software testing.

The author makes use of the Testing Maturity Model(TMM)SM, which was developed to support organizations in assessing and improving their testing processes, as a guiding framework for presenting testing concepts, and as a context for introducing the reader to test process issues. The text uses TMM levels and goals to support a structured presentation of fundamental and advanced test-related concepts to the reader. The TMM structure highlights the important relationships between the testing process and key players such as managers, testers, and client groups.

The readershould note that adaptation of the Testing Maturity Model is not a necessary condition for using this text to learn about software testing. Using this text, you can learn about good testing actices and test process issues and apply them in the context of your individual and organizational needs.

Finally, the author believes that educational material developed for software engineers should be guided by the contents of the Software Engineering Body of Knowledge (SWEBOK). In this context this text endeavors to cover many of the topics outlined in the "Software Testing" chapter of the SWEBOK. It also covers material from the chapters on "Software Quality" and "Software Engineering Process" G o a l s In view of the growth of the software engineering profession, the educational requirements of a software testing specialist, and the need for emphasis on process issues, the author¡¯s goals for this text are to:
• introduce testing concepts, techniques, and best practices in a systematic way that reflects an orderly evolution of testing process growth on both an individual and organizational level;

Download

Testing Embedded Software



Providing a practical and comprehensive overview of how to test embedded software, this book describes how embedded systems can be tested in a structured, controlled way. Including both classic and modern test design techniques, the book should be of use in situations of limited time and resources

Download

The Web Testing Companion: The Insider's Guide to Efficient and Effective Tests

* Written by one of Microsoft's key testing trainers, this hands-on tutorial and reference explains why, when, what, and how to test
* Teaches new and experienced testers how to analyze and properly test Web applications * Filled with practical advice that can be immediately applied to any Web-testing task, on any browser running on any platform
* Concentrates on proven solutions and presents the material in a way that will help develop a professional skill set in novice testers and will improve the productivity of all testers
* Companion Web site includes dozens of valuable templates and test patterns that will allow readers to rapidly conduct tests in multiple languages against all browser and operating-system combinations


Download

Software Test Automation (ACM Press)

You can't just buy an automated testing tool and expect to improve your organization's testing process without some real effort, at least that is what the authors of Software Test Automation argue. Written for any test manager or engineer, this practical-minded guide shows the right way to automate testing to bring down costs and improve overall software quality.

Most importantly, this book debunks the myth that testing tools alone will automate the testing process successfully. It does a good job of showing the limitations of today's testing tools. Instead of providing quick fixes, the authors show that with proper planning, you can design and reuse test scripts in addition to automating many aspects of the testing process (such as comparing actual and expected results). With chapters on designing test scripts, creating a testing architecture that will allow you to reuse test cases, and even documentation on choosing the right testing tool for your needs, this book is filled with plenty of nuts-and-bolts advice.

Later the authors explain software metrics for tracking defects and how to phase in automated testing for the real-world organization (with a good eye for your shop's return on investment). The book closes with over a dozen case studies from the field, in which testing professionals from large companies (including Microsoft) relate their successes (and failures) with real-world test automation. Accessibly written and filled with real-world expertise, Software Test Automation provides a worthy resource for any test engineer on the effective implementation of automated software testing.

Topics covered: test automation basics, the V-model for testing, testing tool limitations, scripts, automating result verification and comparison, filters, testing architecture, pre- and post-processing, improving test maintainability, testing metrics, ROI, choosing a test tool, implementing automated testing within organizations, case studies.

Download

Critical Testing Processes: Plan, Prepare, Perform, Perfect

The advent of agile methodologies and test-driven development has brought software testing to the forefront of application development. Yet in today's harried rush-to-market development environment, organizations must find a delicate balance between product release and product quality.

In Critical Testing Processes, the author distills knowledge gained from 20 years of testing experience into twelve critical processes. These include highly visible processes by which peers and management judge competence, and mission-critical processes in which performance affects the company's profits and reputation.

Download

Unit Testing in Java: How Tests Drive the Code

Software testing is indispensable and is one of the most discussed topics in software development today. Many companies address this issue by assigning a dedicated software testing phase towards the end of their development cycle. However, quality cannot be tested into a buggy application. Early and continuous unit testing has been shown to be crucial for high quality software and low defect rates. Yet current books on testing ignore the developer's point of view and give little guidance on how to bring the overwhelming amount of testing theory into practice. Unit Testing in Java represents a practical introduction to unit testing for software developers. It introduces the basic test-first approach and then discusses a large number of special issues and problem cases. The book instructs developers through each step and motivates them to explore further.
*Shows how the discovery and avoidance of software errors is a demanding and creative activity in its own right and can build confidence early in a project.
*Demonstrates how automated tests can detect the unwanted effects of small changes in code within the entire system.
*Discusses how testing works with persistency, concurrency, distribution, and web applications.
*Includes a discussion of testing with C++ and Smalltalk.

Download

Unit Test Frameworks

Unit test frameworks are a key element of popular development methodologies such as eXtreme Programming (XP) and Agile Development. But unit testing has moved far beyond eXtreme Programming; it is now common in many different types of application development. Unit tests help ensure low-level code correctness, reduce software development cycle time, improve developer productivity, and produce more robust software. Until now, there was little documentation available on unit testing, and most sources addressed specific frameworks and specific languages, rather than explaining the use of unit testing as a language-independent, standalone development methodology. This invaluable new book covers the theory and background of unit test frameworks, offers step-by-step instruction in basic unit test development, provides useful code examples in both Java and C++, and includes details on some of the most commonly used frameworks today from the XUnit family, including JUnit for Java, CppUnit for C++, and NUnit for .NET. Unit Test Frameworks includes clear, concise, and detailed descriptions of: *The theory and design of unit test frameworks *Examples of unit tests and frameworks *Different types of unit tests *Popular unit test frameworks And more It also includes the complete source code for CppUnit for C++, and NUnit for .NET.

Download

The art of software testing


This long-awaited revision of a bestseller provides a practical discussion of the nature and aims of software testing. You'll find the latest methodologies for the design of effective test cases, including information on psychological and economic principles, managerial aspects, test tools, high-order testing, code inspections, and debugging. Accessible, comprehensive, and always practical, this edition provides the key information you need to test successfully, whether a novice or a working programmer. Buy your copy today and end up with fewer bugs tomorrow

Download

Software Testing and Continuous Quality Improvement, Second Edition

Software Testing and Continuous Quality Improvement, Second Edition, illustrates a quality framework for software testing in traditional structured and unstructured environments. Section I reviews modern QA principles and best practices. Section II examines the waterfall development methodology. The next section contrasts waterfall development methodology with the rapid application spiral environment. Section IV discusses fundamental challenges of maintaining and improving existing systems. Section V contains a history of software testing, previews future testing tools, and guides the choosing of proper tools for various environments. It provides examples of some of the most popular products, and offers a detailed methodology for evaluating them.

Download

0 comments:

Post a Comment

DISCLAIMER: THIS SITE DO NOT HOST OR UPLOAD ANY VIDEOS OR ANY OTHER COPYRIGHTED DATA ON OUR SERVERS. WE JUST POST THE RESULTS OF THE MOST SEARCHED TOPICS, FOUND IN OTHER WEBSITES. WE RECOMMEND THE VIEWERS TO VERIFY THE FILES BEFORE USING THEM.