Test Design

Articles

Code on a computer screen Testing a Software Rewrite

Suppose we’re looking at a system rewrite where the stakeholders have none of the original engineering documentation. (This isn't surprising; documentation becomes obsolete—or even misleading—as the system changes, and corresponding docs don't get updated.) What can we do? Here are some tactics to use—and risks to anticipate—when testing a system rewrite.

Steve Poling's picture Steve Poling
Cursor hovering over a question mark button Keeping Accessibility in Mind: Cognition, Memory, and Attention

Digital accessibility refers to assistive technologies as well as to accessibility of web and mobile applications and electronic documents. But there are crucial aspects to accessibility beyond syntactical correctness of the HTML code and supporting a range of browsers and devices. Software testers must have knowledge of accessibility patterns and use a variety of tools to understand the experiences of people with disabilities.

Albert Gareev's picture Albert Gareev
Graph showing boundary values Using Equivalence Partitioning and Boundary Value Analysis in Black Box Testing

Equivalence partitioning and boundary value analysis are two specification-based techniques that are useful in black box testing. This article defines each of these techniques and describes, with examples, how you can use them together to create better test cases. You can save time and reduce the number of test cases required to effectively test inputs, outputs, and values.

Josh Giller's picture Josh Giller
Illustration of a computer with gears showing web test automation Getting Your New Web Test Automation Up and Running

So you have the responsibility of a new team and getting an entirely new web automation test infrastructure up and running. Here are the hurdles, pitfalls, and successes one QA director encountered, along with the milestones the team defined to measure success, how they migrated their existing manual tests, and the path they took to establish the new web test automation initiative.

Daniel Garay's picture Daniel Garay
Person using a mobile app on their phone, photo by Erik Lucatero Evolve Your Mobile Usability Testing Methods

Today’s mobile behaviors and expectations have radically changed, a result of the continuous evolution of mobile technology and the myriad new ways users can now interact with mobile. Because of this advancement in technology and user behavior, testing organizations must also advance their mobile testing solutions to ensure they continue to deliver the most intuitive, up-to-date experience possible.

James Hoshor's picture James Hoshor
Desktop computer with monitoring software on the screen, photo by Jakob Owens 7 Ways Monitoring Can Help You Be a Better Tester

Monitoring makes your testing work easier, helps you manage certain biases you may have, and lets you learn a lot about the product, users, and even your own processes. Here are seven concrete benefits testers get from monitored data that you can use to convince your team to implement monitoring—as well as realize for yourself.

Lina Zubyte's picture Lina Zubyte
Icon showing clipboard with passed and failed tests Teaching Acceptance Test-Driven Development

Acceptance test-driven development is a whole-delivery cycle method that allows the entire team to define system behavior in specific terms before coding begins. These conversations align the expectations of the testers, developers, and product owners, forcing any silly arguments to happen before someone has to create the code twice. Here are some great beginner exercises for teaching ATDD.

Matthew Heusser's picture Matthew Heusser
Row of cupcakes decorated with blue frosting and rainbow sprinkles, photo by Brooke Lark Shifting Testing Left Bakes In Quality from the Start

“Shift left” is one of the latest buzz terms in software testing. Movements like agile and DevOps recommend that testers shift left, but what does that mean, exactly? Here's how one tester became a believer in the shift-left movement; how he got his team's developers, analysts, designers, and managers on board; and how his entire organization has benefited from the shift.

James Espie's picture James Espie
Lines of code, photo by Markus Spiske 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.

Steve Poling's picture Steve Poling
Medical syringes and needles Fault Injection Testing for an IoT Device

If someone says a feature is not testable through the methods we use, it does not absolve us from the responsibility of testing; that's still our job. When this team was given a new connected device to test, they realized their existing functional testing skills wouldn't be sufficient to test the product's core algorithm. So the team got creative, learning the source code and introducing fault injection, figuring out new ways to test.

Ali Khalid's picture Ali Khalid

Pages

StickyMinds is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.