InfoQ recently sat down with Steve Smith and discussed the ideas behind his recent blog post “End-to-End Testing Considered Harmful”. Smith talked about release testing being a form of ‘risk management theatre’, discussed the benefit of unit and acceptance testing, and stressed the value of monitoring at runtime versus the typically fragile and slow-running implementation of end-to-end testing.
Device fragmentation can be a serious hindrance to providing great mobile user experiences. A review of the most common issues faced by developers.
James Lyndsay did a workshop titled "a nest of tests" at the Agile Testing Days 2015. In this workshop he explored how you can design large collections of tiny tests and visualize their output to test systems, and showed how tools can help you to do it. InfoQ interviewed him about this testing approach.
At DockerCon EU 2015, Laura Frank presented “Stop Being Lazy, and Test Your Software”. Frank proposed that testing software is necessary, no matter the size or status of your company, and introducing Docker to the development workflow can assist with writing and running testing frameworks more efficiently, and ultimately facilitate the delivery of high quality software products to customers.
Should you rebuilding or refactoring software?An interview with Wouter Lagerweij about what it is that makes refactoring so difficult, if rebuilding software is less risky than refactoring, and how continuous delivery fits with rebuilding software.
Twitter has open sourced Diffy, an automated testing tool used in production for discovering potential bugs in new code running on Apache Trift and other HTTP-based services.
Amazon has introduced its new AWS Device Farm, a mobile test farm targeting the Android and Fire OS ecosystem that provides a growing collection of more than 200 unique environments, says Amazon, and integration with major testing automation frameworks and CI systems.
The software testing practices and mindset have radically changed since the early days of Agile and Lean. Software testing practices and mindset are an inseparable part of DevOps culture.
Hans van Wezep, software architect at Philips Healthcare, talked about model-based migration at the Bits&Chips Software Engineering conference. InfoQ did an interview with van Wezep about the challenges in maintaining legacy software, why manual refactoring is error prone, using models to refactor and migrate a codebase, and the benefits of using models when maintaining legacy software.
Continuous Integration can help to find integration issues earlier and to visualize the status of the build to all involved. Integration problems can be detected at build-time in stead of run-time during testing and teams can get immediate feedback on changes that they made and on the impact on components that are developed by other teams.
Oftentimes, complex software projects span across multiple repositories on account of external dependencies. This can be a challenge in itself, explains Google WebRTC engineer Patrik Höglund, who also described Google's approach to developing software that uses dozens of third-party libraries such as Chrome.
An interview with Yaniv Yehuda, Co-Founder and CTO of DBmaestro, about how they are doing agile development and using DevOps, how they implemented continuous delivery, on agile practices that turned out to be difficult to implement, and the benefits that they are getting for using agile and DevOps practices.
At Unruly teams have been applying eXtreme Programming (XP) since being founded in 2006. Teams take a test-first approach to developing code and invest in automated checks that can be run in live environments. InfoQ interviewed Rachel Davies about the importance of a continuous approach to testing, how this has evolved over the years and the business advantage that it delivers to Unruly.
Behavior driven development (BDD) can be used to improve communication between testers, developers and the business. For example you can use given-when-then scenarios to develop test scripts and at the same time define the requirements of the system. BDD involves all team members and helps them to think about the product.
Convinced that “whatever can be unit tested should be unit tested”, Mona El Mahdy, a Software Engineer in Test at Google, has written a blog post proposing several approaches to perform unit tests on the user interface of Android applications. Mahdy recommends Robolectric and the Android Studio Gradle plug-in for general unit testing, and Espresso or UI Automator for creating and running UI tests.