Software Testing Articles, Blog Posts, Books, Podcasts and Quotes
This article explores how to use QUnit And SinonJS to perform unit testing on Backbone.js applications. QUnit is a powerful, easy-to-use, JavaScript test suite. It’s used by the jQuery project to test its code and plugins but is capable of testing any generic JavaScript code (and even capable of testing JavaScript code on the server-side). SinonJS is a standalone test spies, stubs and mocks for JavaScript. It has no dependencies and works with any unit testing framework like QUnit.
Arquillian is a open source platform sponsored by JBoss that simplifies the testing of Java middleware. It brings your test to the runtime, freeing you from the concern of managing the runtime from your test and letting you focused on writing your integration test logic. This blog post by Nikolas Frankel explains how to to test Java EE components on JBoss 5.1 EAP with Arquilian and TestNG. His conclusion is that Arquillian seems to be a nice in-container testing framework but seems to have to be polished around some corners. The usage of TestNG may be the culprit here.
Software testing is a major activity in any software development project and a large part of the budget is spent on it. If we want to effectively spend your money, the ease of software testing should be addressed when you design your system in the early stages of building your applications. In this article, Gil Zilberfeld explains that thee adoption of test first practices like Test-Driven Development (TDD) or Acceptance Test-Driven Development (ATDD) by the majority of agile teams shows how test automation needs are addressed from the initial steps of system concepts. As an additional benefit, it is easier to evolve a testable system because you can add features knowing that existing ones did not break.
This article provides a general overview of behaviour-driven development (BDD) in a .NET context. I presents some .NET tools for BDD (SpecFlow) and UI testing (White) and proceeds with a working example giving hands on BDD in .NET. SpecFlow is an open source tool aims to provide a pragmatic and frictionless approach to Acceptance Test Driven Development and Behavior Driven Development for .NET projects. White is an open source framework for automating rich client applications based on Win32, WinForms, WPF, Silverlight and SWT (Java) platforms. It is .NET based and does not require the use of any proprietary scripting languages. Tests automation programs using White can be written with whatever .NET language, IDE and tools.
Test adequacy criteria provide developers with guidance on how to populate software test suites. Current software testing methods do not address many of the fundamental characteristics of distributed systems, such as distribution topology, communication failure, and timing. Furthermore, they do not provide the engineer with a means to evaluate the relative effectiveness of different criteria nor the relative effectiveness of adequate test suites satisfying a given criterion.
Software tests never run fast enough. To improve this performance, this article presents a process called DMAIC (Define, Measure, Analyze, Improve, Control). It shows how to apply this approach with Cucumber, an open source Behavior Driven Development tool. Cucumber lets you describe how software should behave in plain text. The text is written in a business-readable domain-specific language and serves as requirements documentation and source of automated acceptance tests.
Practical Unit Testing with TestNG and Mockito is a book that is intended especially for those who would like to start unit testing their code, but are unsure about how to get started and what to focus on. It presents the unit testing domain with examples in the Java language using the TestNG and Mockito open source tools.