<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Antoine Dubois</title>
    <description>The latest articles on DEV Community by Antoine Dubois (@randomsquirrel802).</description>
    <link>https://dev.to/randomsquirrel802</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3908186%2Ff77e18d7-fcfa-43fb-aac9-0eb9ecaaa1bf.png</url>
      <title>DEV Community: Antoine Dubois</title>
      <link>https://dev.to/randomsquirrel802</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/randomsquirrel802"/>
    <language>en</language>
    <item>
      <title>AI-Assisted QA Changes the Testing Job, Not the Testing Need</title>
      <dc:creator>Antoine Dubois</dc:creator>
      <pubDate>Thu, 04 Jun 2026 09:39:55 +0000</pubDate>
      <link>https://dev.to/randomsquirrel802/ai-assisted-qa-changes-the-testing-job-not-the-testing-need-3hmh</link>
      <guid>https://dev.to/randomsquirrel802/ai-assisted-qa-changes-the-testing-job-not-the-testing-need-3hmh</guid>
      <description>&lt;p&gt;Internal note to the team, we need to improve test coverage and keep shipping, which means we should treat AI as a helper in the workflow, not as a replacement for testing discipline.&lt;/p&gt;

&lt;p&gt;AI-assisted development changes the shape of our risk. It can produce more code faster, but it also increases the chance that small logic mistakes, brittle selectors, and shallow test cases slip through review. The answer is not to add more manual checking everywhere. The answer is to be more deliberate about what we review, what we automate, and where we let AI help.&lt;/p&gt;

&lt;h2&gt;
  
  
  What changes when AI writes part of the code
&lt;/h2&gt;

&lt;p&gt;The first thing that changes is review. When a developer uses AI to draft a feature, a test, or a refactor, the reviewer is no longer only checking intent and style. The reviewer also needs to check whether the generated code matches the product rule, whether it introduced a hidden dependency, and whether it quietly weakened coverage.&lt;/p&gt;

&lt;p&gt;That does not mean every AI-assisted change deserves extra ceremony. It means our review checklist should shift from "does this look correct" to "what did the model assume, and did we verify those assumptions?" That is especially important for test code, because generated tests often look plausible even when they do not prove much.&lt;/p&gt;

&lt;h2&gt;
  
  
  Coverage should move from volume to signal
&lt;/h2&gt;

&lt;p&gt;AI tends to produce more test cases, but more cases are not the same as better coverage. If a generated test suite repeats the same happy path under slightly different names, the team gets a false sense of safety. Coverage should answer a more practical question, where are we most likely to break the user experience, and where will a test actually catch it?&lt;/p&gt;

&lt;p&gt;For chat and other AI features, prompt-by-prompt manual checks are a trap. They do not scale, and they encourage a habit of eyeballing output instead of verifying behavior. A better pattern is to build assertions around expected properties, create eval sets for representative prompts, and add regression coverage for failure modes. The article &lt;a href="https://aitestingcompare.com/how-to-test-ai-chat-features-without-relying-on-prompt-by-prompt-manual-checks/" rel="noopener noreferrer"&gt;How to Test AI Chat Features Without Relying on Prompt-by-Prompt Manual Checks&lt;/a&gt; is a useful practical reference here, because it focuses on assertions, guardrails, and repeatable checks instead of one-off spot checks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Automation decisions need a maintenance lens
&lt;/h2&gt;

&lt;p&gt;AI also affects what we choose to automate. It is tempting to let an assistant generate Playwright tests for every flow, then call it done. The hidden cost shows up later, when those tests need debugging, fixture updates, and locator repairs. AI can speed up creation, but it does not remove maintenance.&lt;/p&gt;

&lt;p&gt;That is why I like comparing the first version of a suite with its first maintenance cycle. The real question is not "how fast can we create tests," it is "how expensive is the second week of ownership?" The piece &lt;a href="https://testautomationguide.com/endtest-vs-hand-written-playwright-suites-what-changes-after-the-first-maintenance-cycle/" rel="noopener noreferrer"&gt;Endtest vs Hand-Written Playwright Suites: What Changes After the First Maintenance Cycle&lt;/a&gt; makes that tradeoff concrete, especially around upkeep, collaboration, and debugging.&lt;/p&gt;

&lt;p&gt;If your app UI changes often, especially locators, editable regression suites can reduce friction. They let the team maintain tests without rewriting everything every time a selector moves. That is why the guide on &lt;a href="https://testingradar.com/how-to-use-endtest-for-editable-regression-suites-when-your-team-keeps-changing-locators/" rel="noopener noreferrer"&gt;How to Use Endtest for Editable Regression Suites When Your Team Keeps Changing Locators&lt;/a&gt; is relevant, because it frames locator stability as a maintenance problem, not just a tooling preference.&lt;/p&gt;

&lt;h2&gt;
  
  
  What to trust in AI testing tools
&lt;/h2&gt;

&lt;p&gt;We should also be careful about the tools themselves. A tool saying it has AI features does not tell us much. Does it explain why it healed a test? Can a human review the change before it lands? Does the generated test code stay understandable six weeks later? Those details matter more than the label.&lt;/p&gt;

&lt;p&gt;Before we trust any automation that claims to be smart, we should verify how much control we keep. The checklist in &lt;a href="https://testingtoolguide.com/ai-features-in-testing-tools-what-buyers-should-verify-before-trusting-the-automation/" rel="noopener noreferrer"&gt;AI Features in Testing Tools: What Buyers Should Verify Before Trusting the Automation&lt;/a&gt; is a good reminder to look for explainability, human review, and failure visibility. That is the difference between a helpful assistant and a black box that quietly erodes confidence.&lt;/p&gt;

&lt;h2&gt;
  
  
  The hidden cost of generated tests
&lt;/h2&gt;

&lt;p&gt;Generated test code is not free just because the first draft appeared quickly. Someone still has to review it, debug it, align it with the app architecture, and keep it from turning into a pile of near-duplicates. If the team does not budget for that work, the automation suite becomes harder to trust over time.&lt;/p&gt;

&lt;p&gt;This is where AI-assisted development can mislead teams. A fast start can hide a slow tail. The article &lt;a href="https://playwright-vs-selenium.com/hidden-cost-of-ai-generated-test-code/" rel="noopener noreferrer"&gt;The Hidden Cost of AI-Generated Test Code&lt;/a&gt; is a useful counterweight, because it frames review, infrastructure, and long-term maintenance as part of the real cost of ownership.&lt;/p&gt;

&lt;h2&gt;
  
  
  A practical operating model for the team
&lt;/h2&gt;

&lt;p&gt;Here is the working approach I would use.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Let AI draft, but not decide
&lt;/h3&gt;

&lt;p&gt;Use AI to produce a first pass for test ideas, boilerplate, and edge case lists. Do not let it decide what matters. A human should pick the assertions, the test boundaries, and the priority of the suite.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Review for behavior, not just syntax
&lt;/h3&gt;

&lt;p&gt;When reviewing AI-assisted code, ask three questions, does this test protect a user outcome, does it fail for the right reason, and is the setup readable enough for a teammate to fix later?&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Keep regression suites editable
&lt;/h3&gt;

&lt;p&gt;If selectors, flows, or copy change often, prioritize maintainable regression patterns over raw code volume. The suite should be easy to update without a full rewrite.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Test AI features with properties and evals
&lt;/h3&gt;

&lt;p&gt;For chat, summarization, classification, and similar features, define what good output means. Use assertions and curated eval sets rather than manually reading every response.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Measure ownership, not just generation speed
&lt;/h3&gt;

&lt;p&gt;When comparing tools or approaches, include the cost of the first maintenance cycle. That is where the real shape of the workflow appears.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where this leaves us
&lt;/h2&gt;

&lt;p&gt;AI-assisted development is changing testing, but not in the dramatic way tool vendors like to suggest. It does not eliminate QA work. It changes where the work happens. We spend less time typing repetitive code and more time checking assumptions, keeping suites maintainable, and deciding which failures actually matter.&lt;/p&gt;

&lt;p&gt;If we get this right, AI can help the team move faster without turning testing into guesswork. If we get it wrong, we end up with more code, more tests, and less confidence.&lt;/p&gt;

&lt;p&gt;For teams still evaluating tools and workflows, &lt;a href="https://ai-testing-tools.com/best-ai-testing-tools-for-qa-teams/" rel="noopener noreferrer"&gt;Best AI Testing Tools for QA Teams&lt;/a&gt; is a practical overview of no-code, low-code, and code-first options. Use it as a starting point, then judge every option by the same rule, does it reduce maintenance without hiding risk?&lt;/p&gt;

&lt;p&gt;That is the bar I would set for the next quarter, better coverage, clearer review, and automation that stays usable after the first rush of AI-generated output.&lt;/p&gt;

</description>
      <category>testing</category>
      <category>devops</category>
      <category>webdev</category>
    </item>
    <item>
      <title>A Practical Note on Testing in Release Pipelines Without Slowing the Team Down</title>
      <dc:creator>Antoine Dubois</dc:creator>
      <pubDate>Wed, 03 Jun 2026 19:11:09 +0000</pubDate>
      <link>https://dev.to/randomsquirrel802/a-practical-note-on-testing-in-release-pipelines-without-slowing-the-team-down-j2b</link>
      <guid>https://dev.to/randomsquirrel802/a-practical-note-on-testing-in-release-pipelines-without-slowing-the-team-down-j2b</guid>
      <description>&lt;p&gt;Team, we need to tighten release quality without turning the pipeline into a traffic jam.&lt;/p&gt;

&lt;p&gt;The goal is not more tests for the sake of more tests. The goal is a release path that tells us, quickly and reliably, whether we can ship. That means testing has to fit the pipeline, not sit beside it as a separate ritual that gets skipped when people are busy.&lt;/p&gt;

&lt;h2&gt;
  
  
  What testing should do inside CI/CD
&lt;/h2&gt;

&lt;p&gt;Testing in a release pipeline has three jobs.&lt;/p&gt;

&lt;p&gt;First, it should catch obvious breakage early, close to the commit that caused it. Second, it should protect the release from known risk areas, especially the paths we do not want to debug at 5 p.m. on a Friday. Third, it should give release owners enough signal to make a decision without opening six dashboards and asking three different teams what happened.&lt;/p&gt;

&lt;p&gt;If tests do not support one of those jobs, they are probably in the wrong place, too expensive to run, or too flaky to trust.&lt;/p&gt;

&lt;p&gt;The practical split is usually simple:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;fast checks on every pull request&lt;/li&gt;
&lt;li&gt;broader integration checks before merge or before release&lt;/li&gt;
&lt;li&gt;a small set of release gate tests that are stable enough to mean something&lt;/li&gt;
&lt;li&gt;targeted post-deploy verification for production risk&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That sounds basic, but teams still get tripped up because the pipeline grows without a clear contract. A test suite starts as a safety net, then becomes a junk drawer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Make release gates narrow and meaningful
&lt;/h2&gt;

&lt;p&gt;A release gate should answer one question, can we ship this version with acceptable risk?&lt;/p&gt;

&lt;p&gt;That means your gate should focus on the handful of flows that would hurt most if broken. Login, checkout, payment, permissions, data writes, feature-flagged behavior, whatever is most critical in your system. You do not need every scenario at the gate. You need the right scenarios.&lt;/p&gt;

&lt;p&gt;This is where teams often confuse smoke testing with sanity testing. Smoke checks that the build is not obviously dead, sanity checks that a specific change or area still makes sense after a small update. The distinction matters because it keeps the pipeline honest about what each test stage is for. The article &lt;a href="https://testautomationreviews.com/smoke-testing-vs-sanity-testing/" rel="noopener noreferrer"&gt;Smoke Testing vs Sanity Testing: What’s the Real Difference?&lt;/a&gt; is a useful reminder that not every test should carry the same release weight.&lt;/p&gt;

&lt;p&gt;A good rule is to make gate tests boring. If a gate test fails, it should usually mean one of two things, the product is broken or the environment is broken. If the answer is often "maybe the test was flaky," then the gate is not doing its job.&lt;/p&gt;

&lt;h2&gt;
  
  
  Flaky failures are a release management problem, not just a test problem
&lt;/h2&gt;

&lt;p&gt;Flaky tests do more damage than a few missed bugs. They teach teams to ignore red builds, rerun until green, and treat signal like noise. Once that habit sets in, the pipeline loses credibility.&lt;/p&gt;

&lt;p&gt;The fix is not just "retry more". Retries can be part of the strategy, but only after you understand the failure pattern. If a test fails due to timing, isolation, data setup, network dependency, or environmental drift, you need to attack the real cause.&lt;/p&gt;

&lt;p&gt;For GitHub Actions specifically, there is a good practical guide in &lt;a href="https://softwaretestingreviews.com/how-to-stabilize-flaky-e2e-tests-in-github-actions/" rel="noopener noreferrer"&gt;How to Stabilize Flaky E2E Tests in GitHub Actions&lt;/a&gt;. What I like about this kind of guidance is that it treats flakiness as an engineering workflow issue, logs, artifacts, environment parity, and clearer debugging, not just as a test authoring mistake.&lt;/p&gt;

&lt;p&gt;A few reliability habits pay off quickly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;isolate test data so runs do not collide&lt;/li&gt;
&lt;li&gt;keep environment setup consistent across local, CI, and staging&lt;/li&gt;
&lt;li&gt;capture screenshots, logs, and network traces on failure&lt;/li&gt;
&lt;li&gt;quarantine flaky tests fast, but require a fix path&lt;/li&gt;
&lt;li&gt;track rerun rates, not just pass rates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That last point matters. A suite that passes after three retries is not stable. It is expensive optimism.&lt;/p&gt;

&lt;h2&gt;
  
  
  Environment control and test data are part of the product
&lt;/h2&gt;

&lt;p&gt;A lot of CI pain comes from pretending test environments are interchangeable.&lt;/p&gt;

&lt;p&gt;They are not.&lt;/p&gt;

&lt;p&gt;If a release pipeline depends on shared environments, mutable test data, or manual resets, then reliability will always be weaker than the code quality deserves. Fast teams need strong environment control, predictable data seeding, and clear ownership when something in the test environment drifts.&lt;/p&gt;

&lt;p&gt;That is why vendor selection and partner evaluation should include the unglamorous stuff. The article &lt;a href="https://automated-testing-services.com/how-to-evaluate-a-qa-outsourcing-partner-for-test-data-environment-control-and-release-coverage/" rel="noopener noreferrer"&gt;How to Evaluate a QA Outsourcing Partner for Test Data, Environment Control, and Release Coverage&lt;/a&gt; is a good example of what to look for. Even if you are not outsourcing QA, the criteria are still useful internally, because they describe the real operational concerns, test data handling, environment control, release coverage, escalation paths, and reporting quality.&lt;/p&gt;

&lt;p&gt;If your team cannot answer these questions quickly, you have a process problem:&lt;/p&gt;

&lt;h3&gt;
  
  
  Questions worth asking
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Who owns the test environment when it breaks?&lt;/li&gt;
&lt;li&gt;How is test data seeded, refreshed, and cleaned up?&lt;/li&gt;
&lt;li&gt;Can the same scenario be reproduced in staging and CI?&lt;/li&gt;
&lt;li&gt;What is the escalation path when release coverage misses something important?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You do not need perfect environments. You need environments that are controlled enough to trust and fast enough to maintain.&lt;/p&gt;

&lt;h2&gt;
  
  
  Release coverage should reflect risk, not habit
&lt;/h2&gt;

&lt;p&gt;Coverage is not the same as confidence.&lt;/p&gt;

&lt;p&gt;A lot of teams keep old regression packs alive because "we have always run them." That is how pipelines get slower without getting safer. A better approach is to map test coverage to release cadence and failure cost.&lt;/p&gt;

&lt;p&gt;If a service changes every day, the regression strategy should be lean, automated, and selective. If a release touches payments or customer data, coverage should be stronger around those flows. If a change is behind a feature flag, validation should include both the enabled and disabled states, plus the fallback behavior.&lt;/p&gt;

&lt;p&gt;The article &lt;a href="https://automated-testing-services.com/how-to-evaluate-an-outsourced-regression-testing-partner-for-release-cadence-coverage-and-escalation-speed/" rel="noopener noreferrer"&gt;How to Evaluate an Outsourced Regression Testing Partner for Release Cadence, Coverage, and Escalation Speed&lt;/a&gt; makes this point well, because it focuses on cadence and triage speed instead of just raw test count. That is the right mindset for internal teams too.&lt;/p&gt;

&lt;p&gt;A release pipeline should not ask, "Did we run the big suite?" It should ask, "Did we cover the risks that changed?"&lt;/p&gt;

&lt;h2&gt;
  
  
  Feature flags reduce risk, but they also add test surface
&lt;/h2&gt;

&lt;p&gt;Feature flags are useful because they let teams ship code separately from exposure. But flags do not remove testing work, they change it.&lt;/p&gt;

&lt;p&gt;Now you need to validate combinations, flag states, user targeting, fallback behavior, and gradual rollout. If you do not, you can create a new class of release bug where the code works, the flag works, and the rollout still fails.&lt;/p&gt;

&lt;p&gt;A practical breakdown is to test the default-off path, the default-on path, the targeted-on path, and the rollback path. You also want to know what happens when a flag service is slow or unavailable.&lt;/p&gt;

&lt;p&gt;For a deeper walkthrough, &lt;a href="https://testproject.to/how-to-test-feature-flag-rollouts-without-creating-a-new-class-of-release-bugs/" rel="noopener noreferrer"&gt;How to Test Feature Flag Rollouts Without Creating a New Class of Release Bugs&lt;/a&gt; is a solid reference. It lines up with how teams actually ship now, where the release problem is often not "does the code compile," but "what happens when we expose this to 5 percent of users first?"&lt;/p&gt;

&lt;h2&gt;
  
  
  Reporting should help release managers make a decision
&lt;/h2&gt;

&lt;p&gt;If your test reporting only helps the engineer who wrote the test, it is incomplete.&lt;/p&gt;

&lt;p&gt;Release managers, QA leads, and execs all need different levels of detail, but they need the same basic truth, what failed, how often, how risky it is, and whether the failure blocks release. A good report should let someone drill from summary to defect to evidence without reading raw logs unless they want to.&lt;/p&gt;

&lt;p&gt;That is why reporting tools should be evaluated with the release decision in mind. The article &lt;a href="https://qatoolguide.com/how-to-evaluate-a-test-reporting-tool-for-release-managers-qa-leads-and-executives/" rel="noopener noreferrer"&gt;How to Evaluate a Test Reporting Tool for Release Managers, QA Leads, and Executives&lt;/a&gt; is useful because it frames reporting around dashboards, defect trends, traceability, and stakeholder-friendly summaries. That is the shape of reporting teams actually need.&lt;/p&gt;

&lt;p&gt;A solid release report answers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;what changed since the last run&lt;/li&gt;
&lt;li&gt;what failed, and whether it is new or known&lt;/li&gt;
&lt;li&gt;which tests are flaky versus genuinely broken&lt;/li&gt;
&lt;li&gt;whether the failure blocks deployment&lt;/li&gt;
&lt;li&gt;who owns the next action&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If a report cannot answer those questions in under a minute, it is too noisy for a fast team.&lt;/p&gt;

&lt;h2&gt;
  
  
  A lightweight operating model for fast teams
&lt;/h2&gt;

&lt;p&gt;If I had to keep this simple, I would use this model:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Keep the fast lane fast
&lt;/h3&gt;

&lt;p&gt;PR checks should stay short, deterministic, and easy to read. They are there to catch local mistakes before they become shared mistakes.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Keep the gate small
&lt;/h3&gt;

&lt;p&gt;Only the most release-critical flows should block shipping. Everything else can be covered earlier, later, or through targeted checks.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Treat flakes like incidents
&lt;/h3&gt;

&lt;p&gt;A flaky test is not just annoying, it is a reliability issue. Give it ownership, severity, and a fix deadline.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Control the environment
&lt;/h3&gt;

&lt;p&gt;Stable pipelines need stable data and stable infrastructure. If either one is drifting, test confidence will drift too.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Make reporting decision-ready
&lt;/h3&gt;

&lt;p&gt;The output of testing should help someone say yes, no, or not yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  Next steps
&lt;/h2&gt;

&lt;p&gt;If your release process is already moving fast but quality feels fragile, do not start by adding more end-to-end tests. Start by asking where the pipeline lies to you.&lt;/p&gt;

&lt;p&gt;Look for the places where red builds are ignored, where reruns are common, where environments are inconsistent, and where reports create more questions than answers. Then tighten the system around those weak points.&lt;/p&gt;

&lt;p&gt;The best release pipelines are not the ones with the most automation, they are the ones that can be trusted when the team is under pressure.&lt;/p&gt;

</description>
      <category>testing</category>
      <category>qa</category>
      <category>automation</category>
      <category>devops</category>
    </item>
    <item>
      <title>A Curated List of Articles About Modern Software Testing</title>
      <dc:creator>Antoine Dubois</dc:creator>
      <pubDate>Tue, 02 Jun 2026 21:49:45 +0000</pubDate>
      <link>https://dev.to/randomsquirrel802/a-curated-list-of-articles-about-modern-software-testing-3ndj</link>
      <guid>https://dev.to/randomsquirrel802/a-curated-list-of-articles-about-modern-software-testing-3ndj</guid>
      <description>&lt;p&gt;Software testing is changing quickly. Teams are dealing with faster release cycles, more AI-assisted development, more complex browser behavior, and higher expectations around product quality.&lt;/p&gt;

&lt;p&gt;I collected a few practical articles that cover different parts of modern QA, test automation, developer workflows, and testing strategy.&lt;/p&gt;

&lt;h2&gt;
  
  
  Recommended reads
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://ai-test-agents.com/how-to-test-ai-agents-for-tool-use-memory-and-recovery-paths/" rel="noopener noreferrer"&gt;How to Test AI Agents for Tool Use, Memory, and Recovery Paths&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical framework for testing AI agents for tool use, memory retention, retries, and recovery paths, with concrete strategies for QA and engineering teams.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://test-automation-tools.com/how-to-evaluate-a-test-automation-tool-for-shadow-dom-iframes-and-other-hard-to-test-ui-surfaces/" rel="noopener noreferrer"&gt;How to Evaluate a Test Automation Tool for Shadow DOM, iframes, and Other Hard-to-Test UI Surfaces&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical buyer guide for evaluating test automation tools for shadow DOM testing, iframe testing, resilient selectors, and dynamic UI edge cases.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://browserslack.com/how-to-reproduce-a-flaky-browser-test-with-video-logs-and-network-traces/" rel="noopener noreferrer"&gt;How to Reproduce a Flaky Browser Test with Video, Logs, and Network Traces&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical workflow to reproduce a flaky browser test using video, logs, and network traces, then turn intermittent failures into repeatable bug reports.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://bughuntersclub.com/endtest-review-for-small-qa-teams-where-editable-test-flows-save-the-most-time/" rel="noopener noreferrer"&gt;Endtest Review for Small QA Teams: Where Editable Test Flows Save the Most Time&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical Endtest review for small QA teams focused on editable test flows, maintainable test steps, and where no-code QA automation actually saves time.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://bugbench.com/editable-test-steps-vs-generated-test-code-which-holds-up-better-after-ui-changes/" rel="noopener noreferrer"&gt;Editable Test Steps vs Generated Test Code: Which Holds Up Better After UI Changes?&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical comparison of editable test steps vs generated test code for UI change resilience, maintenance overhead, debugging, and team handoff, with guidance for QA and engineering leaders.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://automated-testing-services.com/managed-qa-services-vs-staff-augmentation-what-changes-in-ownership-speed-and-cost/" rel="noopener noreferrer"&gt;Managed QA Services vs Staff Augmentation: What Changes in Ownership, Speed, and Cost&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical comparison of managed QA services vs staff augmentation, focusing on ownership, ramp time, communication overhead, cost, and maintenance risk.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://test-automation-experts.com/automation-payback-period-how-long-does-qa-test-automation-take-to-break-even/" rel="noopener noreferrer"&gt;Automation Payback Period: How Long Does QA Test Automation Take to Break Even?&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Learn how to estimate the test automation payback period, model QA ROI, account for maintenance cost, and identify when automation becomes cheaper than manual regression.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://aitestingreport.com/how-qa-teams-should-measure-ai-test-reliability-before-rolling-it-into-ci/" rel="noopener noreferrer"&gt;How QA Teams Should Measure AI Test Reliability Before Rolling It Into CI&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical framework for measuring AI test reliability before promoting AI-assisted tests into CI, including baseline runs, stability metrics, false positives, regression reliability, and pass/fail criteria.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://aitestingreviews.com/ai-testing-vendor-landscape-for-self-healing-visual-and-agentic-features/" rel="noopener noreferrer"&gt;AI Testing Vendor Landscape for Self-Healing, Visual, and Agentic Features&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical AI testing vendor landscape mapped by capability, covering self-healing testing tools, visual AI testing, and agentic testing platforms, with buying guidance and Endtest as an editable example.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://aitestingtoolreviews.com/ai-testing-tool-benchmark-plan-for-dynamic-web-apps-what-to-measure-before-you-trust-the-results/" rel="noopener noreferrer"&gt;AI Testing Tool Benchmark Plan for Dynamic Web Apps: What to Measure Before You Trust the Results&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;A practical benchmark framework for comparing AI testing tools on locator recovery, maintenance effort, failure analysis, and robustness in dynamic web apps.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final thoughts
&lt;/h2&gt;

&lt;p&gt;The useful thing about these topics is that they are connected. Tool selection, browser coverage, AI-assisted workflows, CI reliability, maintainability, and team adoption all affect whether test automation actually works in practice.&lt;/p&gt;

&lt;p&gt;Hopefully these resources help you compare options more clearly and avoid some of the common traps teams run into when scaling QA automation.&lt;/p&gt;

</description>
      <category>testing</category>
      <category>qa</category>
      <category>automation</category>
      <category>ai</category>
    </item>
    <item>
      <title>How AI-Assisted Development Changes the Way We Test, Review, and Automate</title>
      <dc:creator>Antoine Dubois</dc:creator>
      <pubDate>Mon, 01 Jun 2026 15:40:09 +0000</pubDate>
      <link>https://dev.to/randomsquirrel802/how-ai-assisted-development-changes-the-way-we-test-review-and-automate-4iio</link>
      <guid>https://dev.to/randomsquirrel802/how-ai-assisted-development-changes-the-way-we-test-review-and-automate-4iio</guid>
      <description>&lt;p&gt;AI-assisted development is changing more than how fast teams ship code. It is changing the shape of risk.&lt;/p&gt;

&lt;p&gt;When a developer can generate a component, a test, or even a small feature in minutes, the old assumptions around review and coverage start to break down. The question is no longer just, "Did we write enough tests?" It becomes, "Do we understand what the code is doing, what the test is actually proving, and where the system may be guessing?"&lt;/p&gt;

&lt;p&gt;That shift matters for QA engineers, developers, and platform teams alike. AI can be a useful multiplier, but it can also create a false sense of confidence. The teams that do well with AI-assisted development are usually not the ones that automate the most. They are the ones that make test intent, traceability, and reliability more explicit.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI changes the meaning of coverage
&lt;/h2&gt;

&lt;p&gt;Traditional coverage conversations often focused on lines, branches, and a rough sense of feature completion. Those numbers still have value, but they do not tell the whole story when code is AI-generated or AI-assisted.&lt;/p&gt;

&lt;p&gt;A code assistant can produce a lot of syntactically valid output very quickly. That means you can end up with a larger surface area of code, but not necessarily a larger surface area of confidence. In practice, I find it more useful to ask three questions:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. What user behavior is covered?
&lt;/h3&gt;

&lt;p&gt;A test suite should protect business-critical paths, not just code paths. If AI helps generate a new form, a new endpoint, or a new workflow, the important question is whether the tests still describe the user journey correctly.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. What assumptions are hidden?
&lt;/h3&gt;

&lt;p&gt;AI-generated code often contains implicit assumptions about defaults, timing, retries, API responses, or DOM structure. Those assumptions are easy to miss in review. Good testing makes them visible.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. What changed in the failure mode?
&lt;/h3&gt;

&lt;p&gt;When the system fails, is it failing because the logic is wrong, the selector is fragile, the environment is unstable, or the model output is inconsistent? Different failure modes need different strategies.&lt;/p&gt;

&lt;p&gt;That last point is one reason I like the observability mindset from &lt;a href="https://ai-test-agents.com/ai-test-observability-checklist-metrics-that-reveal-when-your-agent-is-guessing/" rel="noopener noreferrer"&gt;AI Test Observability Checklist: Metrics That Reveal When Your Agent Is Guessing&lt;/a&gt;. Even if your team is not testing an AI agent directly, the article is useful because it pushes you to look for signs that automated behavior is drifting, guessing, or becoming flaky. That is a strong mental model for AI-assisted QA too, especially when test steps or assertions are generated with help from a model.&lt;/p&gt;

&lt;h2&gt;
  
  
  Review needs to become more explicit, not just faster
&lt;/h2&gt;

&lt;p&gt;One of the easiest traps with AI-assisted development is assuming that speed automatically improves review throughput. In reality, faster code creation can make review harder, because reviewers see more changes and have less time to understand the intent behind them.&lt;/p&gt;

&lt;p&gt;That means code review and test review should become more explicit about purpose. I like to see reviews answer questions such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What risk does this change introduce?&lt;/li&gt;
&lt;li&gt;What evidence proves it works?&lt;/li&gt;
&lt;li&gt;What would make this test give us a false pass?&lt;/li&gt;
&lt;li&gt;If this fails in CI, how would we know whether it is a product defect or a test defect?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is especially important for generated tests. A test that passes is not always a good test. It might be asserting too little, depending on timing too much, or validating a DOM detail that has no user value.&lt;/p&gt;

&lt;p&gt;A useful supporting perspective comes from &lt;a href="https://bugbench.com/how-to-measure-browser-test-stability-without-confusing-real-failures-with-flakes/" rel="noopener noreferrer"&gt;How to Measure Browser Test Stability Without Confusing Real Failures With Flakes&lt;/a&gt;. The key lesson is simple, stability metrics are only useful when they separate genuine regressions from noisy behavior. In an AI-assisted workflow, that separation matters even more because you may be creating more automation faster, which also increases the chance of introducing brittle checks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Coverage is now about trust boundaries
&lt;/h2&gt;

&lt;p&gt;When AI helps produce code, I think about coverage in terms of trust boundaries.&lt;/p&gt;

&lt;p&gt;A trust boundary is the point where your team stops assuming something will behave correctly and starts verifying it. In AI-assisted development, those boundaries often include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;generated UI flows that rely on specific selectors&lt;/li&gt;
&lt;li&gt;API calls that depend on loosely specified response shapes&lt;/li&gt;
&lt;li&gt;transformations where the code compiles, but the business logic is easy to misread&lt;/li&gt;
&lt;li&gt;tests that were authored quickly and never reviewed for negative paths&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The practical move is to increase coverage where the cost of failure is high, and reduce coverage where the value is low. That sounds obvious, but AI makes it easier to overproduce low-value tests. You can end up with a large suite that looks impressive and still misses the risky paths.&lt;/p&gt;

&lt;p&gt;This is where roadmap thinking helps. A good automation plan should not just ask what can be automated next, it should ask what should be automated next, based on risk and maintenance cost. The guide &lt;a href="https://test-automation-experts.com/how-to-build-a-qa-automation-roadmap-for-the-next-12-months/" rel="noopener noreferrer"&gt;How to Build a QA Automation Roadmap for the Next 12 Months&lt;/a&gt; is a solid reminder that sustainable automation depends on prioritization, team capacity, and ROI, not just enthusiasm.&lt;/p&gt;

&lt;h2&gt;
  
  
  Automation strategy changes when code generation is cheaper
&lt;/h2&gt;

&lt;p&gt;AI-assisted development changes the economics of automation. If code is easier to generate, then creating a test suite is easier too. But maintaining it is still the hard part.&lt;/p&gt;

&lt;p&gt;That changes the tool conversation. Low-code platforms, code-based frameworks, and hybrid approaches all look different when the team can move faster on implementation. What matters most is not whether a tool is flashy, but whether it supports change without turning every edit into a mini-migration.&lt;/p&gt;

&lt;p&gt;That is why I think comparisons like &lt;a href="https://test-automation-tools.com/endtest-vs-low-code-test-automation-platforms-what-changes-in-maintenance-collaboration-and-scale/" rel="noopener noreferrer"&gt;Endtest vs Low-Code Test Automation Platforms: What Changes in Maintenance, Collaboration, and Scale&lt;/a&gt; are relevant to AI-assisted teams. The article is useful because it frames automation around maintenance, collaboration, and scaling, which are exactly the pain points that grow when more tests are created with AI help.&lt;/p&gt;

&lt;p&gt;For teams adopting AI-assisted coding, the main automation question is not, "Can the model generate this test?" It is, "Can the team understand, update, and trust this test six months from now?"&lt;/p&gt;

&lt;h2&gt;
  
  
  Debugging still needs human discipline
&lt;/h2&gt;

&lt;p&gt;AI can help draft a test or suggest a fix, but it does not replace good debugging habits. In fact, AI can make sloppy debugging easier, because it offers plausible explanations very quickly.&lt;/p&gt;

&lt;p&gt;That is dangerous. If a test fails only in WebKit, or only under CI load, or only after a certain navigation path, the worst thing you can do is accept the first explanation that sounds reasonable.&lt;/p&gt;

&lt;p&gt;I keep coming back to workflows like &lt;a href="https://browserslack.com/how-to-debug-webkit-only-failures-in-playwright-without-guessing/" rel="noopener noreferrer"&gt;How to Debug WebKit-Only Failures in Playwright Without Guessing&lt;/a&gt;. The important part is not the browser engine itself, it is the discipline: use traces, compare logs, inspect timing, and validate assumptions against a real browser. That approach is even more important when the test or the component was generated with AI help, because you need a reliable way to distinguish a real compatibility issue from a bad test design.&lt;/p&gt;

&lt;h2&gt;
  
  
  What this means for outsourced teams and handoffs
&lt;/h2&gt;

&lt;p&gt;AI-assisted development also affects the way work gets handed off between developers, QA, and external partners. If a team expects QA to verify generated features without clear test intent, handoffs become vague very quickly.&lt;/p&gt;

&lt;p&gt;The best handoffs are specific. They describe what changed, why it matters, what should be observed, and which parts of the suite are supposed to protect the change. This is true whether QA is internal or outsourced, but it matters even more when AI has accelerated the pace of delivery.&lt;/p&gt;

&lt;p&gt;I found the discussion in &lt;a href="https://automated-testing-services.com/endtest-vs-selenium-for-outsourced-qa-teams-what-changes-in-maintenance-handoffs-and-time-to-value/" rel="noopener noreferrer"&gt;Endtest vs Selenium for Outsourced QA Teams: What Changes in Maintenance, Handoffs, and Time to Value&lt;/a&gt; helpful here, because it focuses on maintenance burden, handoff quality, and time to value. Those are exactly the places where AI-assisted delivery can either reduce friction or amplify confusion.&lt;/p&gt;

&lt;p&gt;If code changes arrive faster, QA needs better context, not just more tickets.&lt;/p&gt;

&lt;h2&gt;
  
  
  A practical mindset for AI-assisted QA
&lt;/h2&gt;

&lt;p&gt;If I had to reduce all of this to a few habits, they would be these:&lt;/p&gt;

&lt;h3&gt;
  
  
  Make test intent visible
&lt;/h3&gt;

&lt;p&gt;Every automated test should answer a clear question. If you cannot describe the behavior it protects, the test is probably too vague.&lt;/p&gt;

&lt;h3&gt;
  
  
  Review generated code as if it were unfamiliar code
&lt;/h3&gt;

&lt;p&gt;Even if the assistant produced it, a human still owns the result. Read it for assumptions, edge cases, and maintainability.&lt;/p&gt;

&lt;h3&gt;
  
  
  Treat flakiness as a product signal
&lt;/h3&gt;

&lt;p&gt;Flaky tests are not just a CI annoyance. They often reveal unstable selectors, weak assertions, or unclear ownership.&lt;/p&gt;

&lt;h3&gt;
  
  
  Prefer stable evidence over clever automation
&lt;/h3&gt;

&lt;p&gt;A simple, well-structured test with good diagnostics is better than a complex one that is hard to trust.&lt;/p&gt;

&lt;h3&gt;
  
  
  Revisit the suite as the team’s AI usage grows
&lt;/h3&gt;

&lt;p&gt;The more AI contributes to implementation, the more important it becomes to audit test quality, failure signals, and maintenance cost.&lt;/p&gt;

&lt;h2&gt;
  
  
  Closing thoughts
&lt;/h2&gt;

&lt;p&gt;AI-assisted development is not making testing less important. It is making the quality of testing more visible.&lt;/p&gt;

&lt;p&gt;Teams that rely on AI to write code, tests, or even review suggestions still need the same fundamentals: clear intent, stable assertions, good observability, and a realistic maintenance plan. What changes is the speed and scale at which weak practices show up.&lt;/p&gt;

&lt;p&gt;If anything, AI raises the bar. It rewards teams that can explain why a test exists, what it protects, and how they know it is telling the truth. That is a good thing. It pushes QA back toward its real job, not just confirming that code runs, but proving that the system behaves in ways the team can trust.&lt;/p&gt;

</description>
      <category>testing</category>
      <category>qa</category>
      <category>automaton</category>
      <category>ai</category>
    </item>
    <item>
      <title>Can AI help us automate tests faster?</title>
      <dc:creator>Antoine Dubois</dc:creator>
      <pubDate>Fri, 15 May 2026 07:46:10 +0000</pubDate>
      <link>https://dev.to/randomsquirrel802/can-ai-help-us-automate-tests-faster-32n</link>
      <guid>https://dev.to/randomsquirrel802/can-ai-help-us-automate-tests-faster-32n</guid>
      <description>&lt;p&gt;Just like most of you, I'm writing more code than ever in the last year. &lt;/p&gt;

&lt;p&gt;I feel like I cloned myself 5 times.&lt;/p&gt;

&lt;p&gt;But my blood tension rises when I see Claude saying "You're absolutely right!" after it inserted a bug.&lt;/p&gt;

&lt;p&gt;And we did introduce a significant number of bugs in production in the last few months.&lt;/p&gt;

&lt;p&gt;I'm old enough to remember the days when testing was taken more seriously, I don't know what happened after that.&lt;/p&gt;

&lt;p&gt;Maybe some younger devs assumed that cross-browser issues are no longer a thing? Because they sure are.&lt;/p&gt;

&lt;p&gt;I'm looking at a list of &lt;a href="https://endtest.io/blog/best-ai-test-automation-tools-2026" rel="noopener noreferrer"&gt;AI Testing Tools&lt;/a&gt; and trying a few of them.&lt;/p&gt;

&lt;p&gt;The last thing I want is to write Selenium or Playwright code and having to maintain a separate codebase just for the tests.&lt;/p&gt;

&lt;p&gt;I want some fancy AI tool that creates tests and then takes care of them and just informs me if the tests are passing or not. &lt;/p&gt;

&lt;p&gt;Seems reasonable, right?&lt;/p&gt;

</description>
      <category>testing</category>
      <category>webdev</category>
      <category>ai</category>
    </item>
    <item>
      <title>Staying Healthy as a Dev Who Works 10 Hours a Day</title>
      <dc:creator>Antoine Dubois</dc:creator>
      <pubDate>Thu, 14 May 2026 22:11:20 +0000</pubDate>
      <link>https://dev.to/randomsquirrel802/staying-healthy-as-a-dev-who-works-10-hours-a-day-3fc0</link>
      <guid>https://dev.to/randomsquirrel802/staying-healthy-as-a-dev-who-works-10-hours-a-day-3fc0</guid>
      <description>&lt;p&gt;We devs spend most of the day sitting, thinking, debugging, building, shipping, and then somehow “relaxing” by sitting again in front of Netflix (ew).&lt;br&gt;
After so many hours of work, the easiest thing is to crash on the couch, order something greasy, and tell yourself you’ll fix your life on Monday.&lt;/p&gt;

&lt;p&gt;But health doesn’t really collapse in one dramatic instance. It slowly gets eaten away.&lt;/p&gt;

&lt;p&gt;One skipped workout.&lt;/p&gt;

&lt;p&gt;One evening where you don’t move.&lt;/p&gt;

&lt;p&gt;One “I deserve this” meal every night.&lt;/p&gt;

&lt;p&gt;One weekend spent indoors.&lt;/p&gt;

&lt;p&gt;And then years pass and we end up with regrets.&lt;/p&gt;

&lt;p&gt;For me, the goal is not to become a fitness influencer. The goal is to still feel like a functional human being after years of building software.&lt;/p&gt;

&lt;p&gt;My basic routine:&lt;/p&gt;

&lt;p&gt;I try to go to the gym 3 times per week. Nothing crazy. Just enough strength training to remind myself that I’m not just a brain attached to a keyboard.&lt;/p&gt;

&lt;p&gt;We have replaced Netflix evenings with long walks. Walking is underrated. It clears your head, gives your eyes a break, and helps you process problems without staring at another screen.&lt;/p&gt;

&lt;p&gt;On weekends, I like running in the park. Again, not because I’m training for some marathon. It just feels good to move outside, breathe fresh air, and remember that the world is bigger than tickets, commits and emails.&lt;/p&gt;

&lt;p&gt;Food is another part of it. I don’t eat everything I crave. That doesn’t mean living like a monk. &lt;/p&gt;

&lt;p&gt;It just means not treating every stressful day as a valid reason to eat whatever I want.&lt;/p&gt;

&lt;p&gt;The older I get, the more I think about the 80-year-old version of myself.&lt;/p&gt;

&lt;p&gt;I don’t want to be retired and broken.&lt;/p&gt;

&lt;p&gt;I want to be the kind of 80-year-old who learns guitar, goes for walks, does volunteer work, reads books, tells stories, and still has enough energy to be curious about life.&lt;/p&gt;

&lt;p&gt;That version of me is not built at 80.&lt;/p&gt;

&lt;p&gt;He is built now.&lt;/p&gt;

&lt;p&gt;During the busy years.&lt;/p&gt;

&lt;p&gt;During the 10-hour workdays.&lt;/p&gt;

&lt;p&gt;During the evenings when Netflix is easier than walking.&lt;/p&gt;

&lt;p&gt;During the moments when I either go to the gym or invent a very convincing excuse.&lt;/p&gt;

&lt;p&gt;Being a dev can be mentally intense, but it should not slowly destroy our bodies.&lt;/p&gt;

&lt;p&gt;You don’t need a perfect routine.&lt;/p&gt;

&lt;p&gt;You just need one that keeps future you alive, mobile, and still interested in the world.&lt;/p&gt;

&lt;p&gt;What's your routine for staying healthy?&lt;/p&gt;

</description>
      <category>watercooler</category>
    </item>
  </channel>
</rss>
