Best of TestingDecember 2024

  1. 1
    Article
    Avatar of nuxtandvueVuejs&Nuxtjs·1y

    Library Tier List from the State of JS 2024

  2. 2
    Article
    Avatar of developsenseDevelopSense·1y

    Voldemort Syndrome

    Since June 2023, James Bach and another researcher have been studying 'syndromes' related to AI chatbots, specifically those based on LLMs and GPTs like ChatGPT. Recently, they identified 'Voldemort Syndrome,' where the chatbot censors specific names, such as 'David Mayer.' The phenomenon suggests both input and output filtering are being used to restrict content. The post highlights the importance of interactive testing and understanding technology to identify issues without requiring deep technical knowledge.

  3. 3
    Article
    Avatar of lobstersLobsters·1y

    Collection of insane and fun facts about SQLite

    SQLite is the world's most deployed and used database, maintained by just three people without outside contributions. It originated from a need for a serverless database on a US warship. SQLite is in the public domain and has an extensive test suite, partly proprietary, ensuring reliability. It has unique traits such as a single writer model, weak typing, and no foreign keys by default. Despite its quirks, SQLite has strong backward compatibility and diverse applications, even outperforming filesystems in some cases.

  4. 4
    Article
    Avatar of cerbosCerbos·1y

    Best practices for testing and deploying microservices

    Transitioning from a monolithic architecture to microservices demands strategic foresight and meticulous execution. Effective testing at various levels—unit, contract, integration, and end-to-end—is essential. Strategies like blue-green deployment, canary deployment, rolling updates, and serverless deployment minimize issues and downtime during deployment. Netflix's approach involves stress testing, chaos engineering, and continuous integration and deployment to ensure resilience and fault tolerance.

  5. 5
    Video
    Avatar of continuousdeliveryContinuous Delivery·1y

    What TDD Looks Like In A REAL PROJECT (With Code Examples)

    Test-driven development (TDD) is often seen as tricky to implement in real-world projects. The post discusses the advantages of TDD, such as encouraging simpler and more testable code designs, and provides a practical example from an open-source project. It highlights the differences between teaching TDD using simple exercises and applying it to complex, real-world scenarios. The post also covers the use of internal DSLs for acceptance testing and demonstrates some coding practices for effective TDD.

  6. 6
    Article
    Avatar of java_libhuntAwesome Java Newsletter·1y

    Quick and Easy: How to Test RESTful APIs in Java

    Testing RESTful APIs is crucial for backend development but switching between IDEs and tools like Postman can reduce efficiency. The Apidog Fast Request plugin for IntelliJ IDEA simplifies this process by enabling API testing directly within the development environment. It supports Java and Kotlin projects, automatically generates API documentation, and syncs endpoint info for team collaboration. Install it from IntelliJ's plugin marketplace for streamlined testing with a single click.

  7. 7
    Article
    Avatar of baeldungBaeldung·1y

    Automated Testing for OpenAPI Endpoints Using CATS

    Explores the use of CATS (Contract Auto Test Service) for automated testing of REST APIs with OpenAPI configurations. CATS generates and runs tests based on the API contract, simplifying the testing process and improving API reliability by identifying potential issues early. Key features include automatic test generation, HTML report creation, and integration with authorization requirements. The post provides a detailed guide on installing CATS, configuring tests, and analyzing test reports to address common API issues.

  8. 8
    Article
    Avatar of baeldungBaeldung·1y

    Mocking Private Fields With Mockito

    Learn how to mock private fields using Mockito in this tutorial. Although Mockito doesn't inherently support it, different approaches such as using Java Reflection API or JUnit 5's ReflectionUtils can achieve this goal. Examples are provided to demonstrate how to set values for private fields and test their methods.

  9. 9
    Article
    Avatar of nodejsdevelopersNode.js developers·1y

    two ways to write this test case, which do you use?

    Discusses two different ways to write a test case and highlights an anti-pattern commonly recognized by experienced practitioners of test-driven development.

  10. 10
    Video
    Avatar of wearedotnetWe Are .NET·1y

    Performance testing your API with Grafana K6⚡

    Performance testing is crucial for ensuring your API can handle high traffic without crashing. This post introduces Grafana K6, a tool that lets you write JavaScript scripts to conduct various performance tests, such as load tests, stress tests, soak tests, and spike tests. It provides insights into API performance, helping identify potential bottlenecks. The tutorial covers installing K6, writing and executing tests, and analyzing results for an ASP.NET Core API.

  11. 11
    Article
    Avatar of csharpcornerC# Corner·1y

    Understanding .http Files in .NET 8

    Microsoft has introduced .http files in .NET 8, allowing developers to create and send HTTP requests directly within Visual Studio. These files simplify API testing, enhance development accuracy, and improve workflow integration. The post provides a step-by-step guide on creating and using .http files in an ASP.NET Core Web API project, showcasing their advantages over traditional third-party tools.

  12. 12
    Article
    Avatar of elixirstatusElixirStatus·1y

    agentjido/jido: A foundational framework for building autonomous, distributed agent systems in Elixir.

    Jido is a foundational framework for building autonomous, distributed agent systems in Elixir. It allows for the creation of smart, composable workflows that can adapt to their environment. Key features include composable actions, real-time sensors, adaptive learning, and built-in telemetry. It is designed for multi-node Elixir clusters and includes robust testing tools. Jido is currently under active development, with the stable API encompassing Actions, Workflows, Agents, and Sensors.

  13. 13
    Article
    Avatar of softwaretestingmagazineSoftware Testing Magazine·1y

    Open Source .NET Behavior-Driven Development (BDD) Tools

    Behavior-Driven Development (BDD) is an Agile approach integrating requirement gathering, documentation, and acceptance testing by writing human-readable sentences describing application features. Several open source .NET BDD tools like SpecFlow, BDDfy, Concordion.NET, and others help store requirements as live documentation and perform functional or acceptance tests, ensuring correct implementation of features.

  14. 14
    Article
    Avatar of lambdatestLambdaTest·1y

    Selenium Python Tutorial : A Python Automation Testing Guide with examples

    Learn how to automate web browsers using Selenium and Python with this comprehensive guide. The tutorial covers installation steps, configuring Selenium with Python, setting up projects, running automated tests on local and cloud grids, handling keyboard and mouse actions, interacting with dropdowns, radio buttons, checkboxes, alerts, and iFrames, and more. Ideal for those seeking to enhance their web testing skills.

  15. 15
    Article
    Avatar of watercoolerWatercooler·1y

    I guess I forgot something when I estimated that a new feature would take 3 days to complete

  16. 16
    Article
    Avatar of communityCommunity Picks·1y

    anti-work/shortest: QA via natural language AI tests

    AI-powered natural language end-to-end testing framework, built on Playwright, integrates with GitHub and supports 2FA. It enables writing tests in natural language and executing them using the Anthropic Claude API. Additionally, it provides lifecycle hooks for pre-and post-test operations, supports GitHub authentication tests, and can be run in CI/CD pipelines.

  17. 17
    Article
    Avatar of communityCommunity Picks·1y

    75+ Testing Practice Websites to Master Software QA in 2024

    The post offers an updated list of over 75 websites dedicated to helping software testers practice and enhance their skills in various testing domains, including general practice, API, automation, security, mobile, accessibility, and performance testing. Each listed site provides unique environments and tools for testers to improve their manual and automated testing abilities.

  18. 18
    Article
    Avatar of baeldungBaeldung·1y

    JSON Unit Test Assertions Using JsonUnit

    Explore the JsonUnit library for creating expressive JSON assertions. Learn about its smooth integration with AssertJ, the use of custom placeholders, and features like navigating JSON paths and ignoring fields or values. JsonUnit simplifies JSON validation through a fluent API, enabling comparisons with templated Strings and use of various configuration options.

  19. 19
    Article
    Avatar of baeldungBaeldung·1y

    Mocking a Method in the Same Test Class Using Mockito Spy

    Mocking is essential in unit testing to isolate specific behaviors. This tutorial demonstrates how to mock a method within the same test class using Mockito Spy through a practical example. Mockito Spy provides the flexibility to use some real methods and stub others, solving the problem of needing to mock complex methods.

  20. 20
    Article
    Avatar of softwaretestingmagazineSoftware Testing Magazine·1y

    Test Automation Best Practices That You Might Not Be Following in Your Daily Testing Routine

    Effective test automation can boost the quality and reliability of your product. This post emphasizes selecting the right tools based on project requirements, integrating CI/CD pipelines for immediate feedback, and maintaining test scripts through regular review and refactoring. Prioritizing tests to focus on the most critical areas ensures efficiency, and integrating various tools within the CI/CD pipeline can streamline the testing process and minimize errors.

  21. 21
    Article
    Avatar of hnHacker News·1y

    Database mocks are just not worth it

    Testing against a real database reveals hidden issues such as unique constraint violations, default value handling, and performance bottlenecks that may not be evident with mocks. It future-proofs your tests by catching schema-related errors early and maintains accurate handling of concurrency and aggregate calculations. Balancing real database tests for data access layers with mocks for higher-level orchestration ensures comprehensive testing without introducing extra reliance on external systems.

  22. 22
    Article
    Avatar of ploehploeh blog·1y

    Pytest is fast

    The author discusses their evolving perspective on dynamically typed languages, particularly Python, emphasizing the fast feedback loop when using pytest for TDD. They compare this with statically typed languages like C#, F#, and Haskell, noting the significant compilation time that affects the development process. The discussion highlights the balance and trade-offs in choosing a language for development, based on testing efficiency and compile time.

  23. 23
    Article
    Avatar of baeldungBaeldung·1y

    How to Drag and Drop in Selenium

    Explore how to perform drag-and-drop actions using Selenium and WebDriver. Learn about the three core methods provided by Selenium: dragAndDrop(), clickAndHold(), and dragAndDropBy(). Understand their usage in various scenarios, from simple element movements to complex, precise drags. Set up the environment with Selenium Java library and WebDriverManager, and see practical examples of each method on demo pages.

  24. 24
    Article
    Avatar of newstackThe New Stack·1y

    Why Your Microservice Integration Tests Miss Real Problems

    Engineering teams often skip comprehensive integration testing due to its complexity in microservices environments. Traditional methods, such as mocks or Docker Compose, come with high maintenance, false confidence, and scalability issues. A new approach using sandbox environments for canary-style integration testing allows for realistic testing by interacting with actual dependencies. This method, exemplified by Signadot's use of AI-powered SmartTests, offers immediate feedback, enhanced reliability, and scalability, transforming how integration tests are conducted in distributed systems.