Software Testing Articles, Blog Posts, Books, Podcasts and Quotes
In those days where software tests are integrated in continuous integration cycles, it is a necessity that they run in a minimized amount of time. This article explains how through controlled memory usage, increased parallelism, transactional factory invocation, pragmatically judicious test refactoring and a few miscellaneous extras, it was possible to reduce the time needed to run the tests of a ruby on rails application in continuous-integration environments by a factor of ten.
In this blog post, Adrian Smith discusses 7 pitfalls of automating software testing. The seven sins are over indulging on propriety testing tools, too lazy to setup CI server to execute tests, loving the UI so much that all tests are executed through the UI, jealously creating tests and not collaborating, frustration with fragile tests that break intermittently, thinking automated tests will replace all manual testing, too much automated testing not matched to defined system quality.
This article presents a simple and efficient engine which produces mutations of source code written in C# with helps testing it. The novelty of this engine is that it produces mutations that do not contradict with the specifications of the program. The latter are described by a set of pre- and post-conditions and invariants. The engine comprises two parts, a static analysis and syntactic verification component and a mutation generation component. Preliminary experiments showed that the proposed engine is more efficient than a simple mutations generator in terms of producing only valid mutations according to the specifications posed, thus saving time and effort during testing activities.
This article presents a strategy for unit testing in Python, using a set of utility functions that converts to and from Roman numerals. The author discusses the benefits of a Test-Driven Development (TDD) approach and propose a detailed testing process for all the cases of the functions.
In this blog post, Jens Schauder shares some tips based on experience to improve the testing of database code. People seem to understand the need to test their code, but apparently this is not yet the case for the the database code, because database tests tend to be slow, interdependent and hard to maintain
A recent Methods & Tools poll asked the following question: “How many weeks of training on software testing have you completed in your professional life?”
This blog post give a detailed code on how to distribute Robot automated acceptance tests to several virtual box instances using Chef. Pavlo Baron explains how using Vagrant and VirtualBox as a poor’s man virtualization and wiring with Chef, you can run in parallel your acceptance testing suite in a distributed environment.