When you learn to program, everything happens on the same computer, but when you start working for a (structured) organization, you realize the risks of changing and testing code directly where your users or customers are working. Thus you will have separated environments for developing, integrating or releasing your system. In this article, Richard Ellison provides some best practices for software testers on how to manage software testing environments.
Acceptance software testing
There is nothing worse than building right the wrong software. Acceptance testing is the activity that allows the customer to validate that the delivered software meets their needs and specifications. If acceptance testing play an important role in validating software delivery, it can also cause some issues as Toby Weston explains it in his book “Essential Acceptance Testing”.
The concept of comparative (or back-to-back) test originates in testing hardware, when the output of the device under test is compared with the output of pre-tested “ideal” device wherein input is provided with the same data. From the viewpoint of Telecom industry, back-to-back test of OSS/BSS (Operating/Business Support Systems) solutions is usually implemented for testing systems managing large amount of data to get maximal coverage of migration and configuration processes. In this article, Yulia Liber discusses pros and cons of implementing comparative tests in Telecom.
Explore the concepts of Behavior-Driven Development (BDD) and Acceptance Test-Driven Development (ATDD) through use of tools from the Arquillian Universe such as Arquillian Drone, Thucydides and Spock.
Behavior-Driven Development (BDD9 and Acceptance Testing are heavily intertwined and in many aspects are one and the same. Both focus on starting at the outer layers of your application by concentrating on what matter to users; behavior.
Tools like Selenium make writing automated browser tests dead easy. Many teams never look further than this, and are satisfied with just replacing their laborious manual testing efforts with reliable Selenium scripts. They’ve missed a big opportunity.
This article from David Sale provides a short introduction to Behavior-Driven Development in Python. The article presents the principles of Behavior Driven Development and present the syntax of the Gherkin language that can be used with the freshen Python package, a clone of the famous Cucumber BDD framework written for Ruby. Freshen is an open source acceptance testing framework for Python that uses (mostly) the same syntax as Cucumber. A small step by step example is provided on how to use freshen and alternative tools are proposed.