Articles

Please enter an article title, author, or keyword
Changeable code The Value of Test-Driven Development when Writing Changeable Code

Writing changeable code makes it easier and more cost-effective to add features to existing software. Writing changeable code doesn’t take longer, but it does require paying attention to certain things when building a system. It's important to have a good suite of unit tests that support refactoring code when needed, and test-driven development helps you create independently testable code.

David Bernstein's picture David Bernstein
Monster mask Tame Your Monster and Make Better Decisions

When you go into a meeting, lead a project, or have to ask management for something, remember that body language, tone of voice, and facial expression are part of the package. The techniques and words are just the tip of the iceberg; under the water are motivations, fear, and anger. If you're feeling anxious or uncertain, wait until you have good energy to make a decision.

Matt Heusser's picture Matt Heusser
AngularJS logo Lessons Learned Testing Angular Applications

AngularJS is a framework used for organization of JavaScript code in highly interactive web and mobile applications. What does that mean from a testing perspective? Here's what should be in your test strategy when you’re testing Angular applications, including what might give you difficulty and how you can mitigate challenges.

Albert Gareev's picture Albert Gareev
Image of lock over code DevSecOps: Incorporate Security into DevOps to Reduce Software Risk

DevSecOps is a growing movement to incorporate security into DevOps practices in order to ensure flaws and weaknesses are exposed early on through monitoring, assessment, and analysis, so remediation can be implemented far earlier than traditional efforts. By failing fast with security testing, organizations reduce risk of a security incident and decrease the cost of rework.

Alan Crouch's picture Alan Crouch
Stopwatch timeout Using Test Automation Timeouts as Performance Alarms

In automated testing, one of the challenges to developing consistent and stable tests is loading and rendering time and latencies. This plays a larger role for web applications or other network dependent applications, especially with user interface automation. But you can design tests so that timeouts can be used to measure the performance of the application and service while testing the functionality.

Faisal Qureshi's picture Faisal Qureshi
Testing code Hybrid Verification: Mixing Formal Methods and Testing

The ability to verify contracts either statically or dynamically, coupled with recent advances in proof technology, has opened up a new and promising approach to verification. Critical code can be proved with formal methods, and less critical code can be verified using traditional testing, with a clear separation at the interfaces between the two.

Ben Brosgol's picture Ben Brosgol
Data servers 7 Steps to Improving Your Data Testing

When you have tens of thousands of rows of data, how do you know what to test or how much to test? A set percentage? Random test cases? When do you stop testing? It can be overwhelming. Here are seven steps to help your team streamline their data testing efforts and know what to test, how much to test, and when to stop testing.

Karis Hathaway's picture Karis Hathaway
Pencil to paper Document Why as Well as What: Finding the Purpose of Your Software

Code can express what we want to accomplish, but it’s a little more difficult to express why we’re doing something in the first place. The people who maintain code are often not those who originally wrote it, so documenting why helps set a context and gives clues as to what the author was thinking when they came up with a particular design, making developers' jobs easier.

David Bernstein's picture David Bernstein
"Hello" in different languages Linguistic Testing: Setting Up Your Software for Global Quality

Globalization is an important step in ensuring your product is ready for worldwide markets, and linguistic testing is a crucial piece of the puzzle. This article looks at what linguistic testing is, product examples, and how locale-specific cultures play an important part in enabling linguistic support. Here’s how to design the best strategy for implementing a linguistic test effort.

Mukesh Sharma's picture Mukesh Sharma
Magnifying glass Exposing False Confidence in Your Tests

Testing can't tell you what's wrong with your code. It can only show what is not wrong with it. And though we cannot possibly conceive everything that might be wrong, it's important to stray from the "happy path." We need test cases that present bogus inputs and assert that they raise exceptions. That's how we can replace our false confidence with true assurance.

Steve Poling's picture Steve Poling

Pages

Upcoming Events

Apr 28
Jun 02
Sep 22
Oct 13