Software Testing Articles, Blog Posts, Books, Podcasts and Quotes
The .NET Micro Framework (NETMF) is an open source .NET platform for resource-constrained devices. It supports development in C#, Visual Basic .NET, and debugging (in an emulator or on hardware) using Microsoft Visual Studio. In this blog post, Mark Nichols explains how to perform unit testing for the .NET Micro Framework.
In my previous column PHP Unit Testing with PHPUnit,I showed how to set up PHPUnit and how to run a few simple tests. You should be able to test any function or method now that doesn’t rely on making calls out to other methods or functions – which is of course very few, as most applications are a complex combination of methods and, in PHP’s case, functions.
Many organizations are currently using an Agile approach to software development. In this context, small teams are recommended with an emphasis on collaboration between team members and cross-functional people. In this blog post, Rob Lambert discusses the actual skills of software testers and how they go beyond software testing, producing what is call a “t-shaped tester”.
Writing and keeping up to date documentation in software development projects has always been a problem. In this blog post, Jim Bird discusses the idea of using automated tests to document a software system. He also ask the questions: what do tests document? who will find this documentation useful?
Answering an article saying that you cannot use exploratory testing in Agile, Huib Schoots tries to explain what exploratory testing is and why it is suitable to perform this activity in an Agile context.
Pex is a Visual Studio 2010 Power Tools that help Unit Testing .NET applications. Pex automatically generates test suites with high code coverage. Right from the Visual Studio code editor, Pex finds interesting input-output values of your methods, which you can save as a small test suite with high code coverage. Microsoft Code Digger is a Visual Studio 2012 that analyzes possible execution paths through your .NET code. The result is a table where each row shows a unique behavior of your code. The table helps you understand the behavior of the code, and it may also uncover hidden bugs.
Root Cause Analysis (RCA) is an approach used in software testing to identify the root causes of defects or problems and address them instead of treating the symptoms. It’s a process that grew out of accident investigations to become a standard feature of hardware engineering. If something is broken, instead of just fixing it at the point of discovery, let’s investigate and try to fix the underlying cause at the point of origin. This principle is applicable for software development and software testing, so much so, that it could have been developed to deal with software defects.