<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>EvalEng</title>
    <link>https://evaleng.com</link>
    <description>Hands-on labs, articles, and videos on evaluating, observing, and testing LLM applications and AI agents in production, by Slav Kurochkin.</description>
    <item>
      <title>How Many Evals Are Enough?</title>
      <link>https://evaleng.com/blog/how-many-evals-are-enough/</link>
      <guid>https://evaleng.com/blog/how-many-evals-are-enough/</guid>
      <pubDate>Sat, 10 Oct 2026 00:00:00 GMT</pubDate>
      <description>Your eval score went from 84% to 86%. Is that a real improvement, or noise? A practical guide to sizing eval sets.</description>
    </item>
    <item>
      <title>Your LLM Judge Is a Measuring Instrument. Calibrate It.</title>
      <link>https://evaleng.com/blog/your-llm-judge-is-a-measuring-instrument/</link>
      <guid>https://evaleng.com/blog/your-llm-judge-is-a-measuring-instrument/</guid>
      <pubDate>Sat, 03 Oct 2026 00:00:00 GMT</pubDate>
      <description>LLM-as-judge is only as trustworthy as its agreement with humans. How to measure that agreement, and what to do when it's low.</description>
    </item>
    <item>
      <title>What if your software could explain itself? AI agent mapping user journey to a software architecture</title>
      <link>https://evaleng.com/blog/what-if-your-software-could-explain-itself/</link>
      <guid>https://evaleng.com/blog/what-if-your-software-could-explain-itself/</guid>
      <pubDate>Thu, 11 Jun 2026 00:00:00 GMT</pubDate>
      <description>A video walkthrough of an AI agent that maps a user journey onto the software architecture behind it.</description>
    </item>
    <item>
      <title>The Only Three Levers That Actually Reduce LLM Costs</title>
      <link>https://evaleng.com/blog/three-levers-that-reduce-llm-costs/</link>
      <guid>https://evaleng.com/blog/three-levers-that-reduce-llm-costs/</guid>
      <pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate>
      <description>When teams start building AI-powered products, the first optimization question is usually: “Should we use a cheaper model?” That’s a good question, but it’s only one piece of a much bigger…</description>
    </item>
    <item>
      <title>Understanding RAG Retrieval Strategies: How to Get the Best Answers from LLMs</title>
      <link>https://evaleng.com/blog/rag-retrieval-strategies/</link>
      <guid>https://evaleng.com/blog/rag-retrieval-strategies/</guid>
      <pubDate>Tue, 17 Mar 2026 00:00:00 GMT</pubDate>
      <description>Modern AI applications increasingly rely on Retrieval-Augmented Generation (RAG) to answer complex queries. RAG combines retrieval from a knowledge base with LLM generation for more accurate,…</description>
    </item>
    <item>
      <title>Building a Kill-Switch for Your AI Agent: Stopping Execution Safely</title>
      <link>https://evaleng.com/blog/ai-agent-kill-switch/</link>
      <guid>https://evaleng.com/blog/ai-agent-kill-switch/</guid>
      <pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate>
      <description>In the world of AI agents and autonomous workflows, it’s easy to imagine the “rogue AI” scenario: your agent starts reasoning, executing tasks, or modifying state, and suddenly you realize — you…</description>
    </item>
    <item>
      <title>An AI Agent That Investigates Broken Builds</title>
      <link>https://evaleng.com/blog/ai-agent-that-investigates-broken-builds/</link>
      <guid>https://evaleng.com/blog/ai-agent-that-investigates-broken-builds/</guid>
      <pubDate>Sat, 07 Mar 2026 00:00:00 GMT</pubDate>
      <description>AI coding tools have made writing code faster than ever. Cursor, Copilot, ChatGPT — you describe what you want, the code appears, you ship it. Velocity is up. PR volume is up. And CI failures?…</description>
    </item>
    <item>
      <title>When Your Safety Net Catches Your AI: Why Validation Layers Matter in LLM Applications</title>
      <link>https://evaleng.com/blog/validation-layers-in-llm-applications/</link>
      <guid>https://evaleng.com/blog/validation-layers-in-llm-applications/</guid>
      <pubDate>Fri, 27 Feb 2026 00:00:00 GMT</pubDate>
      <description>I was running my AI-powered release risk agent against a set of Eval test cases when something interesting happened. The system threw an error — and it was exactly the right thing to do. Let me…</description>
    </item>
    <item>
      <title>I Got Interviewed by an AI — and It Asked Me the Same Question Twice</title>
      <link>https://evaleng.com/blog/interviewed-by-an-ai/</link>
      <guid>https://evaleng.com/blog/interviewed-by-an-ai/</guid>
      <pubDate>Thu, 19 Feb 2026 00:00:00 GMT</pubDate>
      <description>Recently I had an interview conducted by an AI system. It was actually pretty interesting — and a little funny. At one point the AI asked me: “If you work onsite, which state will you work from?”…</description>
    </item>
    <item>
      <title>Extending Promptfoo with RAGAS: Adding RAG-Specific Metrics to Your Eval Pipeline</title>
      <link>https://evaleng.com/blog/extending-promptfoo-with-ragas/</link>
      <guid>https://evaleng.com/blog/extending-promptfoo-with-ragas/</guid>
      <pubDate>Sun, 15 Feb 2026 00:00:00 GMT</pubDate>
      <description>Promptfoo is excellent at what it does: comparing prompts, running assertions, and catching regressions in CI. But if you’re building a RAG pipeline, Promptfoo’s built-in assertions — contains,…</description>
    </item>
    <item>
      <title>LLM-as-Judge Pattern</title>
      <link>https://evaleng.com/blog/llm-as-judge-pattern/</link>
      <guid>https://evaleng.com/blog/llm-as-judge-pattern/</guid>
      <pubDate>Mon, 09 Feb 2026 00:00:00 GMT</pubDate>
      <description>Using one LLM to evaluate another LLM’s output is one of the most powerful eval techniques. It is also one of the most dangerous if done carelessly. How to Write a Judge Prompt A good judge prompt…</description>
    </item>
    <item>
      <title>Exploring Dialogflow CX: How Google Thinks About Conversational AI at Scale</title>
      <link>https://evaleng.com/blog/exploring-dialogflow-cx/</link>
      <guid>https://evaleng.com/blog/exploring-dialogflow-cx/</guid>
      <pubDate>Thu, 05 Feb 2026 00:00:00 GMT</pubDate>
      <description>I’ve been experimenting with Dialogflow CX, Google’s conversational AI platform, and it feels meaningfully different from what we usually think of as a “conversational agent.” That might be…</description>
    </item>
    <item>
      <title>Single-Turn vs Task-Based (Multi-Turn) Evaluation</title>
      <link>https://evaleng.com/blog/single-turn-vs-multi-turn-evaluation/</link>
      <guid>https://evaleng.com/blog/single-turn-vs-multi-turn-evaluation/</guid>
      <pubDate>Sun, 01 Feb 2026 00:00:00 GMT</pubDate>
      <description>Most AI agent failures don’t come from “bad prompts.”They come from treating agents like static functions instead of dynamic systems. Once an agent can: …it is no longer a prompt.It is a…</description>
    </item>
    <item>
      <title>Putting It All Together: A Practical Guide to LLM / AI Evaluation Methods</title>
      <link>https://evaleng.com/blog/practical-guide-to-llm-evaluation-methods/</link>
      <guid>https://evaleng.com/blog/practical-guide-to-llm-evaluation-methods/</guid>
      <pubDate>Fri, 16 Jan 2026 00:00:00 GMT</pubDate>
      <description>When I first started learning about LLM and AI evaluations, I struggled to put all the different evaluation methods into a single mental model. Every blog, paper, or tool seemed to focus on one…</description>
    </item>
    <item>
      <title>Your LLM Benchmark Is Lying to You</title>
      <link>https://evaleng.com/blog/your-llm-benchmark-is-lying-to-you/</link>
      <guid>https://evaleng.com/blog/your-llm-benchmark-is-lying-to-you/</guid>
      <pubDate>Mon, 12 Jan 2026 00:00:00 GMT</pubDate>
      <description>Everyone wants to know which LLM is “better at coding.” We point to leaderboards, single scores, colorful charts, and declare a winner. But if you’ve ever shipped software to production, you…</description>
    </item>
    <item>
      <title>Even iguana can be 10x developer</title>
      <link>https://evaleng.com/blog/even-an-iguana-can-be-a-10x-developer/</link>
      <guid>https://evaleng.com/blog/even-an-iguana-can-be-a-10x-developer/</guid>
      <pubDate>Tue, 06 Jan 2026 00:00:00 GMT</pubDate>
      <description>Last weekend I spent time setting up an “advanced agents” coding workflow — the kind that promises to magically build applications for you while you sleep. Well, the only thing that didn’t sleep…</description>
    </item>
    <item>
      <title>Build ATS-Optimized Resumes with AI | Full Feature Tour Job Search</title>
      <link>https://evaleng.com/blog/ats-optimized-resumes-with-ai/</link>
      <guid>https://evaleng.com/blog/ats-optimized-resumes-with-ai/</guid>
      <pubDate>Wed, 31 Dec 2025 00:00:00 GMT</pubDate>
      <description>I have built AI-powered web application for managing resume alongside job postings and applications. Features intelligent resume optimization, job description analysis, and interview preparation…</description>
    </item>
    <item>
      <title>How I Built an AI Content Generator with LangChain + OpenAI (and a Raccoon)</title>
      <link>https://evaleng.com/blog/ai-content-generator-with-langchain/</link>
      <guid>https://evaleng.com/blog/ai-content-generator-with-langchain/</guid>
      <pubDate>Tue, 23 Dec 2025 00:00:00 GMT</pubDate>
      <description>In this video, I’ll walk you through how I use LangChain and OpenAI models to automatically generate engaging content and hashtags for my social media app — featuring our star raccoon 🦝. You’ll…</description>
    </item>
    <item>
      <title>How Cursor AI and Sentry MCP Turns You Into a 10x Debugger</title>
      <link>https://evaleng.com/blog/cursor-and-sentry-mcp-debugging/</link>
      <guid>https://evaleng.com/blog/cursor-and-sentry-mcp-debugging/</guid>
      <pubDate>Thu, 11 Dec 2025 00:00:00 GMT</pubDate>
      <description>Unlock a next-level debugging workflow by combining Cursor AI with Sentry MCP. In this video, I walk through a real example of how AI can detect, analyze, and fix application issues with almost no…</description>
    </item>
    <item>
      <title>Level up your AI Engineering skills</title>
      <link>https://evaleng.com/blog/level-up-your-ai-engineering-skills/</link>
      <guid>https://evaleng.com/blog/level-up-your-ai-engineering-skills/</guid>
      <pubDate>Sat, 15 Nov 2025 00:00:00 GMT</pubDate>
      <description>Not that long ago, I set a personal goal — to dive deep into AI and see how far it can actually go in making life and work easier. Call me lazy, but I’m all about working smarter, not harder. So,…</description>
    </item>
    <item>
      <title>Model Context Protocol (MCP) for AI-Powered Browser Automation</title>
      <link>https://evaleng.com/blog/mcp-browser-automation/</link>
      <guid>https://evaleng.com/blog/mcp-browser-automation/</guid>
      <pubDate>Mon, 03 Nov 2025 00:00:00 GMT</pubDate>
      <description>Model Context Protocol (MCP) is great for AI-powered browser automation and debugging, with notable implementations from Playwright MCP by Microsoft and Chrome DevTools MCP by Google. These two…</description>
    </item>
    <item>
      <title>The Evolving Role of SDETs: From Testers to Quality Engineers</title>
      <link>https://evaleng.com/blog/the-evolving-role-of-sdets-from-testers-to-quality-engineers/</link>
      <guid>https://evaleng.com/blog/the-evolving-role-of-sdets-from-testers-to-quality-engineers/</guid>
      <pubDate>Tue, 27 May 2025 00:00:00 GMT</pubDate>
      <description>Software testing isn’t dying—it’s evolving. In many industries outside of Finance, Healthcare, or Defense, there’s a growing tolerance for minor bug escapes. Not because quality is being ignored,…</description>
    </item>
    <item>
      <title>Bug Reporting Made Easy with Chrome DevTools AI Assistant</title>
      <link>https://evaleng.com/blog/bug-reporting-made-easy-with-chrome-devtools-ai-assistant/</link>
      <guid>https://evaleng.com/blog/bug-reporting-made-easy-with-chrome-devtools-ai-assistant/</guid>
      <pubDate>Fri, 21 Feb 2025 00:00:00 GMT</pubDate>
      <description>Bug reporting is a critical part of software development, but it can often be time-consuming and require deep debugging skills. Chrome DevTools AI Assistant aims to simplify this process by…</description>
    </item>
    <item>
      <title>Monorepo pre-commit hooks with Husky</title>
      <link>https://evaleng.com/blog/monorepo-pre-commit-hooks-with-husky/</link>
      <guid>https://evaleng.com/blog/monorepo-pre-commit-hooks-with-husky/</guid>
      <pubDate>Mon, 10 Feb 2025 00:00:00 GMT</pubDate>
      <description>Managing a monorepo brings incredible benefits, such as code reuse and unified project management, but it also comes with unique challenges, particularly when it comes to test automation. Running…</description>
    </item>
    <item>
      <title>AI vs SDET or SDET and AI ?</title>
      <link>https://evaleng.com/blog/ai-vs-sdet-or-ai-sdet/</link>
      <guid>https://evaleng.com/blog/ai-vs-sdet-or-ai-sdet/</guid>
      <pubDate>Fri, 07 Feb 2025 00:00:00 GMT</pubDate>
      <description>There’s a lot of talk about AI replacing SQE and SDETs. Here’s why AI falls short when it comes to testing: 1. AI Can’t Architect Test Automation Frameworks AI can generate test cases, but who…</description>
    </item>
    <item>
      <title>Monitoring and debugging your app with Sentry.io</title>
      <link>https://evaleng.com/blog/monitoring-and-debugging-your-app-observability-with-sentry-io/</link>
      <guid>https://evaleng.com/blog/monitoring-and-debugging-your-app-observability-with-sentry-io/</guid>
      <pubDate>Mon, 27 Jan 2025 00:00:00 GMT</pubDate>
      <description>As a test engineer, observability tools are a crucial part of my workflow. They help me triage errors, understand user behavior, and map out service dependencies. This weekend, I decided to dive…</description>
    </item>
    <item>
      <title>How to make sure the Code and Libraries are Secure with SonarQube</title>
      <link>https://evaleng.com/blog/how-to-make-sure-the-code-and-libraries-are-secure/</link>
      <guid>https://evaleng.com/blog/how-to-make-sure-the-code-and-libraries-are-secure/</guid>
      <pubDate>Tue, 21 Jan 2025 00:00:00 GMT</pubDate>
      <description>Last year, I was interviewing at a cybersecurity company, and one of the questions they asked was: How do you make sure the code and libraries that you use are secure? I knew about security…</description>
    </item>
    <item>
      <title>How to add code formating to your JavaScript project</title>
      <link>https://evaleng.com/blog/how-to-add-code-formating-to-your-javascript-project/</link>
      <guid>https://evaleng.com/blog/how-to-add-code-formating-to-your-javascript-project/</guid>
      <pubDate>Sat, 02 Nov 2024 00:00:00 GMT</pubDate>
      <description>To set up linters and code formatting for a React and Express project, you’ll want to use ESLint for linting and Prettier for consistent formatting. Here’s a step-by-step guide for frontend and…</description>
    </item>
    <item>
      <title>How to add Swagger OpenAPI docs to NodeJS Express</title>
      <link>https://evaleng.com/blog/how-to-add-swagger-openapi-docs-to-nodejs-express/</link>
      <guid>https://evaleng.com/blog/how-to-add-swagger-openapi-docs-to-nodejs-express/</guid>
      <pubDate>Thu, 31 Oct 2024 00:00:00 GMT</pubDate>
      <description>Setting up OpenAPI (Swagger) in your Express app allows you to generate interactive API documentation. Follow these steps to integrate OpenAPI with your Express app. 1. Install Dependencies You’ll…</description>
    </item>
    <item>
      <title>Docker setup for NodeJS application</title>
      <link>https://evaleng.com/blog/using-docker-for-nodejs-application/</link>
      <guid>https://evaleng.com/blog/using-docker-for-nodejs-application/</guid>
      <pubDate>Wed, 30 Oct 2024 00:00:00 GMT</pubDate>
      <description>Here’s a Docker setup to containerize both the React frontend and the Express backend efficiently. Below are the two separate Dockerfiles and a docker-compose.yml to orchestrate them. 1.…</description>
    </item>
    <item>
      <title>How Playwright Communicates With Browsers</title>
      <link>https://evaleng.com/blog/how-playwright-communicates-with-browsers/</link>
      <guid>https://evaleng.com/blog/how-playwright-communicates-with-browsers/</guid>
      <pubDate>Mon, 28 Oct 2024 00:00:00 GMT</pubDate>
      <description>Playwright communicates with browsers through browser-specific protocols over a WebSocket or process communication channel. Each supported browser (like Chromium, WebKit, and Firefox) exposes an…</description>
    </item>
    <item>
      <title>A Comprehensive Guide to Initiating a Test Automation</title>
      <link>https://evaleng.com/blog/a-comprehensive-guide-to-initiating-a-test-automation/</link>
      <guid>https://evaleng.com/blog/a-comprehensive-guide-to-initiating-a-test-automation/</guid>
      <pubDate>Tue, 08 Oct 2024 00:00:00 GMT</pubDate>
      <description>Many companies I’ve worked for or interviewed with have faced a common challenge: successfully initiating a test automation project. During interviews, it’s common for interviewers to mention that…</description>
    </item>
    <item>
      <title>E2E Test Automation Design Patterns</title>
      <link>https://evaleng.com/blog/e2e-test-automation-design-patterns/</link>
      <guid>https://evaleng.com/blog/e2e-test-automation-design-patterns/</guid>
      <pubDate>Sat, 20 Jul 2024 00:00:00 GMT</pubDate>
      <description>Throughout my career, I have worked with various test automation frameworks, including Selenium WebDriver (Java, Python), WebdriverIO (JavaScript), Puppeteer (JavaScript), Cypress, and Playwright…</description>
    </item>
    <item>
      <title>iOS Mobile UI Testing with XCUI Test</title>
      <link>https://evaleng.com/blog/ios-mobile-ui-testing-with-xcui-test/</link>
      <guid>https://evaleng.com/blog/ios-mobile-ui-testing-with-xcui-test/</guid>
      <pubDate>Tue, 02 Jul 2024 00:00:00 GMT</pubDate>
      <description>I recently worked on an iOS ToDo list application for a couple of reasons: to learn more about SwiftUI and to have a pet project for practicing XCUI Test. This simple ToDo list application uses…</description>
    </item>
    <item>
      <title>Postman Generative AI Backend API Testing</title>
      <link>https://evaleng.com/blog/postman-generative-ai-backend-api-testing/</link>
      <guid>https://evaleng.com/blog/postman-generative-ai-backend-api-testing/</guid>
      <pubDate>Sun, 16 Jun 2024 00:00:00 GMT</pubDate>
      <description>In this tutorial, I’m exploring Postman Generative AI for Backend API Integration Testing</description>
    </item>
    <item>
      <title>Changing Quality Culture, from Startup to Enterprise (shift left)</title>
      <link>https://evaleng.com/blog/changing-quality-culture-from-startup-to-enterprise-shift-left/</link>
      <guid>https://evaleng.com/blog/changing-quality-culture-from-startup-to-enterprise-shift-left/</guid>
      <pubDate>Tue, 21 May 2024 00:00:00 GMT</pubDate>
      <description>I recently presented at the Chicago QA Association, where I talked about changing the quality culture in the organization. As a company progresses through various stages, it’s crucial to ensure…</description>
    </item>
    <item>
      <title>Using Postman proxy for data setup</title>
      <link>https://evaleng.com/blog/using-postman-proxy-for-data-setup/</link>
      <guid>https://evaleng.com/blog/using-postman-proxy-for-data-setup/</guid>
      <pubDate>Thu, 07 Mar 2024 00:00:00 GMT</pubDate>
      <description>Quick video on how to use Postman Proxy for website data setup automation</description>
    </item>
    <item>
      <title>E2E Testing Framework Design</title>
      <link>https://evaleng.com/blog/cypress-e2e-testing-setup/</link>
      <guid>https://evaleng.com/blog/cypress-e2e-testing-setup/</guid>
      <pubDate>Wed, 27 Dec 2023 00:00:00 GMT</pubDate>
      <description>When building an E2E testing solution it is important to understand how the application works not only from UI (black box) perspective but also how backend services interact one with another, how…</description>
    </item>
    <item>
      <title>Cypress vs Playwright (2023)</title>
      <link>https://evaleng.com/blog/cypress-vs-playwright-october-2023/</link>
      <guid>https://evaleng.com/blog/cypress-vs-playwright-october-2023/</guid>
      <pubDate>Thu, 12 Oct 2023 00:00:00 GMT</pubDate>
      <description>I’m always looking for ways to improve testing and team performance, as described in the book “Accelerate” having fast feedback is crucial for high-performing teams. So lately, I’ve come across…</description>
    </item>
    <item>
      <title>Improving Software Testing Efficiency: Why E2E Tests Are Slow and How to Speed Them Up</title>
      <link>https://evaleng.com/blog/improving-software-testing-efficiency-why-e2e-tests-are-slow-and-how-to-speed-them-up/</link>
      <guid>https://evaleng.com/blog/improving-software-testing-efficiency-why-e2e-tests-are-slow-and-how-to-speed-them-up/</guid>
      <pubDate>Tue, 05 Sep 2023 00:00:00 GMT</pubDate>
      <description>In the fast-paced world of software development, speed is paramount. Being the first to market can make all the difference, allowing you to reap the rewards of your hard work. Software testing is…</description>
    </item>
    <item>
      <title>Fixing Flaky E2E Tests in Cypress</title>
      <link>https://evaleng.com/blog/fixing-flaky-e2e-tests/</link>
      <guid>https://evaleng.com/blog/fixing-flaky-e2e-tests/</guid>
      <pubDate>Tue, 20 Jun 2023 00:00:00 GMT</pubDate>
      <description>One of the biggest challenges in E2E testing is to overcome flaky tests. In this blog post, I will share a few approaches that I use to reduce flakiness in Cypress (the test framework I’m using…</description>
    </item>
    <item>
      <title>Understand E2E Test Automation</title>
      <link>https://evaleng.com/blog/e2e-test-automation-misunderstood-by-managers/</link>
      <guid>https://evaleng.com/blog/e2e-test-automation-misunderstood-by-managers/</guid>
      <pubDate>Sun, 21 May 2023 00:00:00 GMT</pubDate>
      <description>Almost everywhere I worked management (including QA managers) and developers have different perspectives on the role of test automation and how it works. In this post, I will try to explain my…</description>
    </item>
    <item>
      <title>Re-inventing testing pyramid</title>
      <link>https://evaleng.com/blog/re-inventing-testing-pyramid/</link>
      <guid>https://evaleng.com/blog/re-inventing-testing-pyramid/</guid>
      <pubDate>Wed, 07 Sep 2022 00:00:00 GMT</pubDate>
      <description>The testing pyramid introduced by Mike Cohn in his book Succeeding with Agile (2009), originally had only 3 tiers, given it was more than a decade ago we should ask ourselves is that still…</description>
    </item>
    <item>
      <title>Python API testing beyond the GET request.</title>
      <link>https://evaleng.com/blog/python-api-testing-beyond-the-get-request/</link>
      <guid>https://evaleng.com/blog/python-api-testing-beyond-the-get-request/</guid>
      <pubDate>Wed, 25 Nov 2020 00:00:00 GMT</pubDate>
      <description>Recently I wrote a blog post on API testing in Python, but I only talked about GET requests there. In this tutorial we are going to look at POST and PUT requests and how to provide data for it.…</description>
    </item>
    <item>
      <title>Performance testing with JMeter</title>
      <link>https://evaleng.com/blog/performance-testing-with-jmeter/</link>
      <guid>https://evaleng.com/blog/performance-testing-with-jmeter/</guid>
      <pubDate>Sun, 15 Nov 2020 00:00:00 GMT</pubDate>
      <description>JMeter is a powerful tool for load and performance testing. In this tutorial we going to look on how to install JMeter on MacOS, record and run your test. To install JMeter on Mac open up the…</description>
    </item>
    <item>
      <title>Visual Testing with Jest and Puppeteer</title>
      <link>https://evaleng.com/blog/visual-testing-with-jest-and-puppeteer/</link>
      <guid>https://evaleng.com/blog/visual-testing-with-jest-and-puppeteer/</guid>
      <pubDate>Sat, 14 Nov 2020 00:00:00 GMT</pubDate>
      <description>In this tutorial we are going to create a Visual Regression Tests with Jest and Puppeteer. If you not familiar with visual regression testing, it is tests based on image recognition, basically we…</description>
    </item>
    <item>
      <title>Django Database Model Unit Testing</title>
      <link>https://evaleng.com/blog/django-database-unit-testing/</link>
      <guid>https://evaleng.com/blog/django-database-unit-testing/</guid>
      <pubDate>Wed, 11 Nov 2020 00:00:00 GMT</pubDate>
      <description>Working with databases always have some challenges. The main problem is if we run tests against real database it can get flooded with fake data and yes you going to run apps against test…</description>
    </item>
    <item>
      <title>Health Check of a Public Website using Python</title>
      <link>https://evaleng.com/blog/public-website-health-check-using-python/</link>
      <guid>https://evaleng.com/blog/public-website-health-check-using-python/</guid>
      <pubDate>Wed, 11 Nov 2020 00:00:00 GMT</pubDate>
      <description>So you running public website and you have something like Jenkins server where you can execute small programs and monitor state of your website. There are many advanced paid solutions for that,…</description>
    </item>
    <item>
      <title>Detox Test Reports in Jenkins</title>
      <link>https://evaleng.com/blog/detox-test-reports-in-jenkins/</link>
      <guid>https://evaleng.com/blog/detox-test-reports-in-jenkins/</guid>
      <pubDate>Wed, 04 Nov 2020 00:00:00 GMT</pubDate>
      <description>In this blog post we going to integrate Detox reports in Jenkins CI/CD pipeline. But first let’s see how test reports working in Jenkins. Most likely you going to have JUnit plugin pre-installed…</description>
    </item>
    <item>
      <title>Debugging Detox UI tests in React Native</title>
      <link>https://evaleng.com/blog/debugging-detox-react-native-ui-automation-tests/</link>
      <guid>https://evaleng.com/blog/debugging-detox-react-native-ui-automation-tests/</guid>
      <pubDate>Thu, 29 Oct 2020 00:00:00 GMT</pubDate>
      <description>Those who worked with mobile applications UI testing in Appium used to elements finder which comes with Appium Inspector, but when you work with Detox finding elements is quite challenging. In…</description>
    </item>
    <item>
      <title>API testing with Python</title>
      <link>https://evaleng.com/blog/api-testing-with-python/</link>
      <guid>https://evaleng.com/blog/api-testing-with-python/</guid>
      <pubDate>Thu, 24 Sep 2020 00:00:00 GMT</pubDate>
      <description>There are many ways of doing API testing, the most popular tools is Postman (JavaScript) and RestAssured (Java), in this post we going to use Python request library to test Deck of Cards API.…</description>
    </item>
    <item>
      <title>Automating Checkers with Selenium in Python</title>
      <link>https://evaleng.com/blog/automating-checkers-with-selenium-in-python/</link>
      <guid>https://evaleng.com/blog/automating-checkers-with-selenium-in-python/</guid>
      <pubDate>Fri, 04 Sep 2020 00:00:00 GMT</pubDate>
      <description>I’m originally from Russia and since I was a kid I been playing Chess and Checkers. I have heard about competitions between humans and computers, and it was always interesting to me what is going…</description>
    </item>
    <item>
      <title>Configure NodeJS in Jenkins</title>
      <link>https://evaleng.com/blog/install-nodejs-in-jenkins/</link>
      <guid>https://evaleng.com/blog/install-nodejs-in-jenkins/</guid>
      <pubDate>Sun, 23 Aug 2020 00:00:00 GMT</pubDate>
      <description>I’m currently working on ReactJS and Reactive Native application in order for me to build the app in Jenkins I need to install NodeJS plugin and configure it. Here is how to do it. Assuming you…</description>
    </item>
    <item>
      <title>JavaScript UI Testing with Puppeteer: Improving Click function</title>
      <link>https://evaleng.com/blog/javascript-ui-testing-with-puppetteer-improving-click-function/</link>
      <guid>https://evaleng.com/blog/javascript-ui-testing-with-puppetteer-improving-click-function/</guid>
      <pubDate>Fri, 07 Aug 2020 00:00:00 GMT</pubDate>
      <description>In ReactJs project I’m working on we are using Puppeteer as UI testing framework, the framework is part of node dev dependencies and living with app source code. Since development team constantly…</description>
    </item>
    <item>
      <title>Changing  iOS and Android simulator status bar for Visual Testing</title>
      <link>https://evaleng.com/blog/changing-ios-and-android-simulator-status-bar-for-visual-testing/</link>
      <guid>https://evaleng.com/blog/changing-ios-and-android-simulator-status-bar-for-visual-testing/</guid>
      <pubDate>Thu, 30 Jul 2020 00:00:00 GMT</pubDate>
      <description>There is lots of talk lately about visual testing and benefits of catching UI bugs upfront and even though it’s pretty easy task for modern web browser testing, it can be complicated for mobile…</description>
    </item>
    <item>
      <title>How to access Digital Ocean droplet on Mac / Linux</title>
      <link>https://evaleng.com/blog/shh-to-your-digital-ocean-droplet-on-mac-linux/</link>
      <guid>https://evaleng.com/blog/shh-to-your-digital-ocean-droplet-on-mac-linux/</guid>
      <pubDate>Wed, 22 Jul 2020 00:00:00 GMT</pubDate>
      <description>This is a short how-to guide how to access Digital Ocean droplet from your machine First let’s create a droplet. Assuming you already have digital ocean account, click Create and then Droplets…</description>
    </item>
    <item>
      <title>Using Loading Animation in your Test Automation</title>
      <link>https://evaleng.com/blog/tip-of-the-day-using-loading-animation-in-your-test-automation/</link>
      <guid>https://evaleng.com/blog/tip-of-the-day-using-loading-animation-in-your-test-automation/</guid>
      <pubDate>Tue, 30 Jun 2020 00:00:00 GMT</pubDate>
      <description>In test automation, there is quite often the situation when we need to wait for the page to load before interacting with UI elements on the page. If the page is too heavy and developers don’t want…</description>
    </item>
    <item>
      <title>Retry failed Detox tests with Mocha</title>
      <link>https://evaleng.com/blog/retry-failed-detox-tests-with-mocha/</link>
      <guid>https://evaleng.com/blog/retry-failed-detox-tests-with-mocha/</guid>
      <pubDate>Sat, 27 Jun 2020 00:00:00 GMT</pubDate>
      <description>UI tests are flaky, especially when you run it on mobile devices. There are multiple factors that can lead to false-positive test results, if that happens you would want retry failed test before…</description>
    </item>
    <item>
      <title>Running JavaScript Appium on Azure DevOps</title>
      <link>https://evaleng.com/blog/running-javascript-appium-on-azure-devops/</link>
      <guid>https://evaleng.com/blog/running-javascript-appium-on-azure-devops/</guid>
      <pubDate>Thu, 25 Jun 2020 00:00:00 GMT</pubDate>
      <description>So you built your Appium tests and running it locally, then developer make changes and asking you to run tests, you dropping everything making a build against his branch for android and ios…</description>
    </item>
    <item>
      <title>React-app with Puppeteer, Jest and Travis CI</title>
      <link>https://evaleng.com/blog/react-app-with-puppeteer-jest-and-travis-ci/</link>
      <guid>https://evaleng.com/blog/react-app-with-puppeteer-jest-and-travis-ci/</guid>
      <pubDate>Mon, 22 Jun 2020 00:00:00 GMT</pubDate>
      <description>E2E testing of React applications could be done with multiple frameworks, including WebdriverIO, Cypress, or Puppeteer. In this blog post, we going to see how to setup Puppeteer with Jest and run…</description>
    </item>
    <item>
      <title>Abstracting Appium Capabilities from test file</title>
      <link>https://evaleng.com/blog/abstracting-appium-capabilities-from-test-file/</link>
      <guid>https://evaleng.com/blog/abstracting-appium-capabilities-from-test-file/</guid>
      <pubDate>Sat, 13 Jun 2020 00:00:00 GMT</pubDate>
      <description>In the previous blog we set Appium to run with Jest and added desired capabilities to beforeAll hook. While this approach will work for a small project when you dealing with a fairly large…</description>
    </item>
    <item>
      <title>Mobile Testing with Appium, Jest and WebdriverIO</title>
      <link>https://evaleng.com/blog/appium-test-automation-with-jest-and-webdriver-io/</link>
      <guid>https://evaleng.com/blog/appium-test-automation-with-jest-and-webdriver-io/</guid>
      <pubDate>Thu, 11 Jun 2020 00:00:00 GMT</pubDate>
      <description>While there are lots of blogs on how to run Appium with Mocha, there is not much info on how to do it with Jest as a test runner. In this blog post, we will set up Appium with Jest and WebdriverIO…</description>
    </item>
    <item>
      <title>E2E Testing React Native Applications</title>
      <link>https://evaleng.com/blog/testing-react-native-application/</link>
      <guid>https://evaleng.com/blog/testing-react-native-application/</guid>
      <pubDate>Tue, 09 Jun 2020 00:00:00 GMT</pubDate>
      <description>There are few frameworks that are suitable for React Native apps testing, the most popular is Appium and Detox. Appium is a standalone testing application and Detox is more of a grey box testing…</description>
    </item>
    <item>
      <title>Launch Android emulator on macOS using command line</title>
      <link>https://evaleng.com/blog/launch-android-emulator-on-macos-using-command-line/</link>
      <guid>https://evaleng.com/blog/launch-android-emulator-on-macos-using-command-line/</guid>
      <pubDate>Thu, 04 Jun 2020 00:00:00 GMT</pubDate>
      <description>Testing mobile applications I quite often have to launch Android emulator, there is an option to launch through Android Studio and then UI of AVD. Working in automation space I don’t want all…</description>
    </item>
    <item>
      <title>Xpath cheatsheet</title>
      <link>https://evaleng.com/blog/xpath-cheatsheet/</link>
      <guid>https://evaleng.com/blog/xpath-cheatsheet/</guid>
      <pubDate>Wed, 03 Jun 2020 00:00:00 GMT</pubDate>
      <description>Often I find myself using certain XPath patterns and then forgetting how to do it, so I decided to create XPath cheatsheet. 1. XPath to search by partial id, so let say you have div id which…</description>
    </item>
    <item>
      <title>How to set environment variables in Node.js</title>
      <link>https://evaleng.com/blog/how-to-set-environment-variables-in-node-js/</link>
      <guid>https://evaleng.com/blog/how-to-set-environment-variables-in-node-js/</guid>
      <pubDate>Sat, 23 May 2020 00:00:00 GMT</pubDate>
      <description>Lately, I been working a lot with JavaScript and Node.js, one thing I struggled is setting up environment variables so I could run my automation tests based on the flag I passed. As a test runner…</description>
    </item>
    <item>
      <title>JavaScript Event Delegation</title>
      <link>https://evaleng.com/blog/javascript-event-delegation/</link>
      <guid>https://evaleng.com/blog/javascript-event-delegation/</guid>
      <pubDate>Fri, 03 Apr 2020 00:00:00 GMT</pubDate>
      <description>For my study project, I’m building a Chat application, similar to Slack. And if you ever used Slack you know there are different channels and if there is no channel that you need for the project,…</description>
    </item>
    <item>
      <title>Cypress.io quick reference</title>
      <link>https://evaleng.com/blog/cypress-io-quick-reference/</link>
      <guid>https://evaleng.com/blog/cypress-io-quick-reference/</guid>
      <pubDate>Mon, 23 Mar 2020 00:00:00 GMT</pubDate>
      <description>This blog post will be used for Cypress.io quick reference, use the official website for more detailed information on how things work in Cypress Starting cypress locally (more detailed info on the…</description>
    </item>
    <item>
      <title>Flask quick reference</title>
      <link>https://evaleng.com/blog/flask-useful-commands/</link>
      <guid>https://evaleng.com/blog/flask-useful-commands/</guid>
      <pubDate>Wed, 18 Mar 2020 00:00:00 GMT</pubDate>
      <description>This post will be updating constantly to keep different flask commands cheat sheet. Set the environment variable FLASK_APP to be application.py Change Flask running port</description>
    </item>
    <item>
      <title>Cypress.io interacting with tables and lists</title>
      <link>https://evaleng.com/blog/cypress-io-interacting-with-array-or-list-of-elements/</link>
      <guid>https://evaleng.com/blog/cypress-io-interacting-with-array-or-list-of-elements/</guid>
      <pubDate>Thu, 05 Mar 2020 00:00:00 GMT</pubDate>
      <description>Often we get to a situation when we have a list, table or even div elements which have no way to differentiate one from another, here is an example: If you using WebDriver most likely you would…</description>
    </item>
    <item>
      <title>Is working from home worth it?</title>
      <link>https://evaleng.com/blog/is-working-from-home-worth-it/</link>
      <guid>https://evaleng.com/blog/is-working-from-home-worth-it/</guid>
      <pubDate>Sun, 01 Mar 2020 00:00:00 GMT</pubDate>
      <description>“People already work remote, they just don’t realize it. Those who work on the first floor, almost never talk face to face with those who work on the second floor” – someone posted it on Linkedin,…</description>
    </item>
    <item>
      <title>Get checkbox value in Flask and Jinja2</title>
      <link>https://evaleng.com/blog/get-checkbox-value-in-flask-and-jinja2/</link>
      <guid>https://evaleng.com/blog/get-checkbox-value-in-flask-and-jinja2/</guid>
      <pubDate>Mon, 24 Feb 2020 00:00:00 GMT</pubDate>
      <description>Here is how to get checkbox value from jinja2 template in a flask, first let’s create our jinja2 file: Then lets retrieve value from the form: Where rating is the name of input boxes</description>
    </item>
    <item>
      <title>How to use sessions in Flask</title>
      <link>https://evaleng.com/blog/how-to-use-sessions-in-flask/</link>
      <guid>https://evaleng.com/blog/how-to-use-sessions-in-flask/</guid>
      <pubDate>Sun, 23 Feb 2020 00:00:00 GMT</pubDate>
      <description>One of the things you need to do as a developer of the application is track who is logged in to your application so you can display pages related to that specific user. In Flask you can use…</description>
    </item>
    <item>
      <title>Ignore CSV header in Python</title>
      <link>https://evaleng.com/blog/ignore-csv-header-in-python/</link>
      <guid>https://evaleng.com/blog/ignore-csv-header-in-python/</guid>
      <pubDate>Sat, 22 Feb 2020 00:00:00 GMT</pubDate>
      <description>Sometimes you would get a data sheet as CSV file which needs to import in SQL, the problem is CSV files don’t really care what data type in the sheet, unlike SQL. Let’s say you have a books CSV…</description>
    </item>
    <item>
      <title>Pipenv how to create python virtual environment</title>
      <link>https://evaleng.com/blog/pipenv-how-to-create-python-virtual-environment/</link>
      <guid>https://evaleng.com/blog/pipenv-how-to-create-python-virtual-environment/</guid>
      <pubDate>Wed, 19 Feb 2020 00:00:00 GMT</pubDate>
      <description>First things first we need to install pipenv, so make sure you have python 3.* and pip installed on your machine. Then create directory for your project (or navigate to existing one): Once you…</description>
    </item>
    <item>
      <title>South Florida Test Automation Meetup Notes, January 2020</title>
      <link>https://evaleng.com/blog/south-florida-test-automation-meetup-notes-january-2020/</link>
      <guid>https://evaleng.com/blog/south-florida-test-automation-meetup-notes-january-2020/</guid>
      <pubDate>Sat, 18 Jan 2020 00:00:00 GMT</pubDate>
      <description>A little bit of history before we jump to January meetup notes. About four years ago I got a chance to lead South Florida Test Automation Meetup, together with Philip Daye we started organizing…</description>
    </item>
    <item>
      <title>Do we have to do UI automation for everything in 2020?</title>
      <link>https://evaleng.com/blog/do-we-have-to-do-ui-automation-for-everything-in-2020/</link>
      <guid>https://evaleng.com/blog/do-we-have-to-do-ui-automation-for-everything-in-2020/</guid>
      <pubDate>Tue, 07 Jan 2020 00:00:00 GMT</pubDate>
      <description>Lately, we more and more hear that not every UI test needs to be automated. I tend to disagree with this statement. Even though there are cases where automating something will take longer than…</description>
    </item>
  </channel>
</rss>