Skip to main content

30 posts tagged with "Test Automation"

View All Tags

Testing a Salesforce App: Apex vs Selenium vs DevAssure O2 — A Side-by-Side Comparison

Divya Manohar
Co-Founder and CEO, DevAssure

Short answer

Apex validates server logic fast but cannot see the UI. Selenium covers user flows but breaks on Shadow DOM, MFA, and every release. DevAssure O2 runs plain-English tests in a real browser — same UI coverage as Selenium without locator maintenance. Use Apex + O2, not Apex + brittle scripts.

Every Salesforce team tests. The question is how — and what slips through the cracks depending on which approach you use.

In this post, I'm going to take a real Salesforce application — Dreamhouse, Salesforce's official sample app — and test the same functionality three different ways:

  1. Apex unit tests (the traditional Salesforce-native approach)
  2. Selenium WebDriver (the industry-standard UI automation approach)
  3. DevAssure O2 Agent (autonomous browser-based testing)

For each approach, I'll show you the actual code, explain what it catches, what it misses, and the ongoing maintenance cost. By the end, you'll have a clear picture of where each approach fits — and where it falls short.

From Release QA to Autonomous QA: Why We Built DevAssure O2 After Years of Fighting PR Bottlenecks

Badri Varadarajan
Co-Founder and COO, DevAssure

Short answer

Engineering velocity is rarely limited by how fast people write code. It is limited by testing friction on pull requests — flaky suites, run-everything CI, and release gates that force a choice between speed and quality. DevAssure O2 was built to validate every PR from intent and impact inside the developer workflow, without maintaining brittle test scripts.

For years, I led teams focused on engineering productivity and release management across startups and enterprises. My primary job was not just shipping features — it was ensuring release trains moved predictably, developers remained productive, and quality gates did not become velocity killers.

One thing became very clear over time:

Engineering velocity was rarely limited by coding speed. It was limited by testing friction.

Why Your Vibe-Coded PR Keeps Breaking Production in 2026 (And How to Catch It Before Merge)

Divya Manohar
Co-Founder and CEO, DevAssure

Short answer

Vibe-coded PRs break production because speed outruns validation: the diff looks fine in review, but behaviour regresses. Fix it at the pull request with an agent that tests the running app on each PR — not with more AI-written unit tests or line-by-line review alone.

You merged on Friday. Checkout looked fine in the diff. By Monday, support tickets say promo codes stop applying after a failed payment retry.

The PR was 400 lines, mostly written by Cursor in an afternoon. Two approvals. Green CI — because unit tests passed and nobody had an E2E check for that path.

How to Automatically Test Every Pull Request in 2026 (Without Writing a Single Test)

Divya Manohar
Co-Founder and CEO, DevAssure

Short answer

To automatically test every pull request on GitHub in 2026, add a pull_request workflow in GitHub Actions. The usual path is Playwright or Cypress plus tests you write and maintain. The alternative is an autonomous testing agent that reads the PR diff, generates E2E tests for that change, runs them, and posts a check — with zero test files in your repo.

Every team wants E2E tests on every PR. Almost none actually has them — because someone has to write those tests, fix them when the UI changes, and defend a thirty-minute CI job that still flakes.

If you are the developer opening the PR, that someone is often you, after hours, clicking re-run on a red check you do not trust.

Add Power to Your TestRail Test Cases with DevAssure

Santhosh Selladurai
Co-Founder and CTO, DevAssure

Your team already plans and tracks tests in TestRail. The gap is execution: turning those cases into reliable UI automation without a second script suite to maintain. DevAssure closes that loop—fetch cases from TestRail, run them in a real browser with an AI agent, and optionally sync results, defects, and videos back to TestRail.

Every TestRail workflow in this guide is available in two places: the @devassure/cli for terminals and CI/CD, and the DevAssure VS Code extension (VSCE) for interactive runs from the IDE. Configure once—credentials and post-result settings are shared between both.