Process
Articles
Reduce Technical Debt by Using Unit Tests as Documentation Technical debt is an inevitable side effect of legacy code. Some code can (and should) be pruned, but institutional memory fades—what if there's a reason certain lines were included that may not be immediately obvious? Done right, unit tests can serve as documentation. Later on, these tests can illuminate what the developer was thinking when they created the code. |
||
5 Ways to Optimize Tests for Continuous Integration Many teams have existing automated test suites that are not included in a continuous integration program. Maybe the tests take too long to execute, or they are not reliable enough to give accurate results. Here’s how to assess your test suites in terms of value added and time to execute, along with five proven strategies to optimize those suites for CI. |
||
Measuring the Performance of Your Operations Center Many organizations have problems with consistently tracking and measuring system outages. Issues aren't logged, admins make changes to systems without going through change management, and a high number of issues turn out to be recurring problems. Implementing a performance measurement process calculates system reliability and can help you improve consistency. |
||
Shifting Testing Left Is a Team Effort There is a lot of talk in the testing world about shifting left. Basically, “shift left” refers to moving the test process to an earlier point in the development process, independent of the development approach. This article explores a case in which shift-left has been applied, and the lesson is that shifting left cannot be achieved by testers alone—it must result from a team effort. |
||
When the Code Is Too Obvious to Check How many times does something seem too obvious to check? Most of the time this normal human response is a handy shortcut. Your brain tries to save you time—but you can’t always trust it. If your code malfunctions, each of those "too obvious to check" thoughts will bias your thinking about what caused the malfunction. We have to commit up front, before our thinking crystalizes, that the code will have to prove to us that it is correct. |
||
5 Things That Will Impact the Future of Software Testing From the way we look at software, evaluate risks, think about complexity, design our test approach and strategy, and help to release a stable product to the customer, technology has had an influence on how we test software. And that influence will only continue as technology advances. On a high level, here are five key things we’re already seeing that are going to shape the future of software testing. |
||
For Sustainable Test Automation, Look beyond the Surface When it comes to achieving sustainable test automation, having an appropriate test automation team structure in place is the most important first step to take. This article has some proven practices for a few different test automation adoption scenarios—led by an automation team or a regression team, and with agile adaptations—that have helped organizations enjoy long-term test automation success. |
||
A Case for Test-First Development You may feel you don't have time to write unit tests, but you really don't have time not to. Steve Poling makes the case that writing tests first not only will yield better code, but will help you get that code working right sooner. Here's how using a test-first approach changes your thinking about coding, lets you see mistakes immediately, and helps you create more testable code. |
||
Agile Trends to Watch in 2018 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. |
||
Learn More from Tests That Stray off the Happy Path Unit tests exercise various paths through your codebase. Some are happy paths where everything you expect goes right. These tests are boring. The interesting tests are the ones where your code goes hurtling off the happy path. The trick is to capture the diversity of a multitude of unhappy paths without needlessly duplicating unit tests. Here's how you can improve the quality of your unit testing and fix it more effectively. |