Agile

Articles

Developers have a tendency to overbuild their code. This is frequently due to not knowing exactly when they're done and not knowing how robust a feature needs to be. Acceptance test-driven development (ATDD) is a great way to avoid this practice because when the acceptance test passes, the developer knows they're done building that particular feature.

Getting good test documentation is a consistent challenge. Agile proposes that you should go very light on documentation, and while test documentation does not need to be heavy, it does need to be clear and cover all that the product is intended to do so you can ensure testing is consistent and results are recorded. Here's how to overcome some major barriers to getting good test documentation.

The test pyramid is a great model for designing your test portfolio. However, the bottom tends to fall out when you shift from progression testing to regression testing. The tests start failing, eroding the number of working unit tests at the base of your pyramid. If you don't have the development resources required for continuous unit test maintenance, there are still things you can do.

Part of the path to DevOps requires adoption of agile methodologies. What does it mean for testing when you switch from the traditional waterfall model, with a few long release cycles per year, to the agile model, with changes occurring every two weeks? Here are five key factors to achieve the agile software testing necessary in DevOps.

DevOps is more than adopting the right set of tools; it's a cultural shift that incorporates testing at each stage of the agile project lifecycle. Continuous testing is key to unlocking this culture change because it weaves testing activities into every part of the software design, development, and deployment processes, which helps everyone involved communicate more, collaborate better, and innovate faster.

The waterfall method of developing software is a bunch of translation activities: The design is a translation of the requirements into the language of architecture, the code is another, and a formal test process is a third. And with each translation, there’s the opportunity to introduce error. When your DevOps team is isolated, it creates another handoff, and another point of failure.

Cross-functionality means having all the necessary people and skills on one self-organizing team. Unfortunately, the execution of cross-functionality is often biased. The main traps we fall into are misunderstanding the value of specialization, hero worship, and not “walking the cross-functional talk” as organizations. Let’s examine each of these pitfalls in the hope that your teams may avoid them.

From his decade of teaching thousands of professional software developers how to be effective with test-driven development, David Bernstein has learned that there are three key ingredients for mastering TDD: understanding what it really is, making code reliably testable, and getting hands-on experience. Let’s look at each of these factors to see what it takes to use TDD effectively on your projects.

With 2018 well underway, it seems like a good time to look ahead and think about what we hope to accomplish this year. Find out which agile trends these software experts are most looking forward to in the coming months.

With the rise of technology like AI and practices like DevOps, teams everywhere are looking for ways to speed up testing without sacrificing quality. The articles in 2017 reflect that, with the most popular topics being test automation, testing machine learning systems, next-generation exercises, and the future of software testing. If you're looking for cutting-edge testing techniques, check out this roundup.

Starting October 2-3 you can live stream all 5 keynotes, select sessions, speaker interviews and chat along with other virtual attendees. Register now and mark your calendar to join us live or on-demand after the event.