# Code Coverage

Published articles for Code Coverage.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Rider and ReSharper 2026.2.2 Are Out!

DevFeed: [Rider and ReSharper 2026.2.2 Are Out!](<https://devfeed.tech/articles/rider-and-resharper-2026-2-2-are-out-31525.md>)

Original publisher: [Read original article](<https://blog.jetbrains.com/dotnet/2026/09/16/rd-rs-2026-2-2/>)

Author: Alexander Kurakin

Published: 2026-09-16T14:12:44Z

Content type: release

Language: en

Sources: [The JetBrains Blog](<https://devfeed.tech/sources/the-jetbrains-blog.md>)

Topics: [rider](<https://devfeed.tech/topics/rider.md>), [resharper](<https://devfeed.tech/topics/resharper.md>), [AI-assisted coding](<https://devfeed.tech/topics/ai-assisted-coding.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [ai-agent-hooks](<https://devfeed.tech/tags/ai-agent-hooks.md>), [ai-agents](<https://devfeed.tech/tags/ai-agents.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [coverage](<https://devfeed.tech/tags/coverage.md>), [hooks](<https://devfeed.tech/tags/hooks.md>), [jetbrains](<https://devfeed.tech/tags/jetbrains.md>), [macos](<https://devfeed.tech/tags/macos.md>), [mcp](<https://devfeed.tech/tags/mcp.md>), [net](<https://devfeed.tech/tags/net.md>), [net-tools](<https://devfeed.tech/tags/net-tools.md>), [releases](<https://devfeed.tech/tags/releases.md>), [resharper](<https://devfeed.tech/tags/resharper.md>), [rider](<https://devfeed.tech/tags/rider.md>), [update](<https://devfeed.tech/tags/update.md>)

### AI overview

JetBrains releases Rider, ReSharper, and .NET tools 2026.2.2, adding an AI Agent Setup widget in Rider, more targeted hook feedback for coding agents, TUnit coverage support, and fixes including a macOS freezing issue.

### Source excerpt

We've released version 2026.2.2 of ReSharper, Rider, and .NET tools. You can install this update from inside the tools themselves, through the Toolbox App, or on our website. Here's what's new in this update. Rider 2026.2.2 AI Agent Setup widget We've recently added a wide range of features to help you work with coding agents [...]

## Improving Test Coverage in the Interview Coach Application with GitHub Copilot

DevFeed: [Improving Test Coverage in the Interview Coach Application with GitHub Copilot](<https://devfeed.tech/articles/today-i-will-improve-test-coverage-26909.md>)

Original publisher: [Read original article](<https://devblogs.microsoft.com/visualstudio/today-i-will-improve-test-coverage/>)

Author: Aaron Powell

Published: 2026-09-15T16:00:21Z

Content type: tutorial

Language: en

Sources: [Visual Studio Blog](<https://devfeed.tech/sources/visual-studio-blog.md>)

Topics: [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Test coverage](<https://devfeed.tech/topics/coverage.md>), [GitHub Copilot](<https://devfeed.tech/topics/github-copilot.md>), [App](<https://devfeed.tech/topics/app.md>), [Visual Studio](<https://devfeed.tech/topics/visual-studio.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [agent](<https://devfeed.tech/tags/agent.md>), [analysis](<https://devfeed.tech/tags/analysis.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [copilot](<https://devfeed.tech/tags/copilot.md>), [github-copilot](<https://devfeed.tech/tags/github-copilot.md>), [productivity](<https://devfeed.tech/tags/productivity.md>), [projects](<https://devfeed.tech/tags/projects.md>), [run](<https://devfeed.tech/tags/run.md>), [test](<https://devfeed.tech/tags/test.md>), [test-coverage](<https://devfeed.tech/tags/test-coverage.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>), [visual-studio](<https://devfeed.tech/tags/visual-studio.md>)

### AI overview

This tutorial explains how to improve test coverage in the Interview Coach application by establishing a baseline, using GitHub Copilot's Test Agent to generate unit tests, and analyzing coverage across the solution. The article reports coverage increasing from 37% to 81%.

### Source excerpt

Today I want to look at how we can improve on the test coverage that we have in the Interview Coach application. This application has some unit tests in it already, but I'm sure there is room for improvement. Defining our baseline Before we start writing tests, it's a good idea to have a baseline [...] The post Today I will... improve test coverage appeared first on Visual Studio Blog.

## One Decade Later: Revisiting Five Front-End Kung Fu Moves

DevFeed: [One Decade Later: Revisiting Five Front-End Kung Fu Moves](<https://devfeed.tech/articles/one-decade-later-revisiting-five-front-end-kung-fu-moves-27460.md>)

Original publisher: [Read original article](<https://ariya.io/2026/04/one-decade-later-revisiting-five-front-end-kung-fu-moves/>)

Published: 2026-04-30T23:26:34Z

Content type: opinion

Language: en

Sources: [Ariya Hidayat](<https://devfeed.tech/sources/ariya-hidayat.md>)

Topics: [Front end](<https://devfeed.tech/topics/frontend.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [ci](<https://devfeed.tech/topics/ci.md>), [Instrumentation](<https://devfeed.tech/topics/instrumentation.md>), [ESLint](<https://devfeed.tech/topics/eslint.md>), [Git](<https://devfeed.tech/topics/git.md>), [web-standards](<https://devfeed.tech/topics/web-standards.md>)

Tags: [browser](<https://devfeed.tech/tags/browser.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [coverage](<https://devfeed.tech/tags/coverage.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [eslint](<https://devfeed.tech/tags/eslint.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [front-end](<https://devfeed.tech/tags/front-end.md>), [git-hooks](<https://devfeed.tech/tags/git-hooks.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [testing](<https://devfeed.tech/tags/testing.md>), [web-standards](<https://devfeed.tech/tags/web-standards.md>)

### AI overview

A retrospective revisits front-end engineering techniques presented at a JavaScript meetup ten years earlier. It discusses git hooks, code complexity, code coverage, and cross-browser testing, explaining how common tools and modern workflows have changed their practical use.

### Source excerpt

Exactly ten years ago, I gave a talk at the SF JavaScript meetup titled 5 Kung Fu Moves for Front-End Heroes. A full decade later, I found myself wondering: are these techniques still the secret sauce for modern front-end engineering, or have they been rendered obsolete by time?

## Using Mutation Testing to Evaluate Test Suite Effectiveness

DevFeed: [Using Mutation Testing to Evaluate Test Suite Effectiveness](<https://devfeed.tech/articles/test-your-test-23032.md>)

Original publisher: [Read original article](<https://www.javaadvent.com/2025/12/test-your-test.html>)

Author: Andres Sacco

Published: 2025-12-04T02:02:10Z

Content type: tutorial

Language: en

Sources: [Java Advent Calendar](<https://devfeed.tech/sources/java-advent-calendar.md>)

Topics: [mutation-testing](<https://devfeed.tech/topics/mutation-testing.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [2025](<https://devfeed.tech/tags/2025.md>), [code](<https://devfeed.tech/tags/code.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [effective](<https://devfeed.tech/tags/effective.md>), [mutation](<https://devfeed.tech/tags/mutation.md>), [mutation-testing](<https://devfeed.tech/tags/mutation-testing.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

The article explains why high code coverage does not necessarily indicate effective tests. It introduces mutation testing, which evaluates a test suite by making small controlled changes to source code and checking whether the tests detect those changes.

### Source excerpt

Creating or modifying an application involves many aspects, such as following best practices and applying design patterns to solve everyday problems. After writing the code, developers usually add unit tests and rely on tools like Sonar to track metrics such as code coverage and highlight potentially untested areas. However, high test coverage does not guarantee [...] The post Test Your Test appeared first on JVM Advent.

## Improving our Java SDK with Codex by OpenAI

DevFeed: [Improving our Java SDK with Codex by OpenAI](<https://devfeed.tech/articles/improving-our-java-sdk-with-codex-by-openai-35881.md>)

Original publisher: [Read original article](<https://temporal.io/blog/improving-java-sdk-codex-openai>)

Author: Ryan Cox

Published: 2025-05-17T00:00:00Z

Content type: article

Language: en

Sources: [Temporal Blog](<https://devfeed.tech/sources/temporal-blog.md>)

Topics: [codex](<https://devfeed.tech/topics/codex.md>), [Java](<https://devfeed.tech/topics/java.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>), [OpenAI](<https://devfeed.tech/topics/openai.md>), [bug](<https://devfeed.tech/topics/bug.md>), [Refactoring](<https://devfeed.tech/topics/refactoring.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [agentic](<https://devfeed.tech/tags/agentic.md>), [announcements](<https://devfeed.tech/tags/announcements.md>), [automate](<https://devfeed.tech/tags/automate.md>), [bug](<https://devfeed.tech/tags/bug.md>), [bug-fixes](<https://devfeed.tech/tags/bug-fixes.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [codex](<https://devfeed.tech/tags/codex.md>), [contributions](<https://devfeed.tech/tags/contributions.md>), [development](<https://devfeed.tech/tags/development.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [github](<https://devfeed.tech/tags/github.md>), [java](<https://devfeed.tech/tags/java.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [openai](<https://devfeed.tech/tags/openai.md>), [refactoring](<https://devfeed.tech/tags/refactoring.md>), [sdk](<https://devfeed.tech/tags/sdk.md>)

### AI overview

Temporal engineers describe using OpenAI's Codex to improve the Java SDK by fixing bugs, implementing features, increasing code coverage, adding documentation, and performing refactoring. They also used parallel background tasks and AGENTS.md files to prepare repositories for agentic contributions.

### Source excerpt

Learn all about how the Temporal engineers used OpenAI's Codex to improve our Java SDK, automate bug fixes, and prepare for agentic contributions, plus, how part of Codex itself runs on Temporal.

## Ep. 11: Enhancing Go Code with Effective Application Layer Tests

DevFeed: [Ep. 11: Enhancing Go Code with Effective Application Layer Tests](<https://devfeed.tech/articles/ep-11-enhancing-go-code-with-effective-application-layer-tests-22254.md>)

Original publisher: [Read original article](<https://www.ardanlabs.com/blog/2024/07/proper-prompt-formatting-for-enhanced-ai-model-performance-ep-11.html>)

Published: 2024-07-30T00:00:00Z

Content type: tutorial

Language: en

Sources: [William Kennedy](<https://devfeed.tech/sources/william-kennedy.md>)

Topics: [Go Language](<https://devfeed.tech/topics/go-language.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Software Engineering](<https://devfeed.tech/topics/software-engineering.md>)

Tags: [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [comprehensive-go-testing](<https://devfeed.tech/tags/comprehensive-go-testing.md>), [context](<https://devfeed.tech/tags/context.md>), [context-management-go-tests](<https://devfeed.tech/tags/context-management-go-tests.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [debugging-go-applications](<https://devfeed.tech/tags/debugging-go-applications.md>), [effective-test-organization-go](<https://devfeed.tech/tags/effective-test-organization-go.md>), [efficient-go-testing-techniques](<https://devfeed.tech/tags/efficient-go-testing-techniques.md>), [error-handling](<https://devfeed.tech/tags/error-handling.md>), [go](<https://devfeed.tech/tags/go.md>), [go-application-layer-tests](<https://devfeed.tech/tags/go-application-layer-tests.md>), [go-authentication-tokens](<https://devfeed.tech/tags/go-authentication-tokens.md>), [go-continuous-integration-testing](<https://devfeed.tech/tags/go-continuous-integration-testing.md>), [go-dependencies-management](<https://devfeed.tech/tags/go-dependencies-management.md>), [go-error-handling-consistency](<https://devfeed.tech/tags/go-error-handling-consistency.md>), [go-middleware-handlers](<https://devfeed.tech/tags/go-middleware-handlers.md>), [go-project-test-implementation](<https://devfeed.tech/tags/go-project-test-implementation.md>), [go-subtests-domain-level](<https://devfeed.tech/tags/go-subtests-domain-level.md>), [go-testing-strategies](<https://devfeed.tech/tags/go-testing-strategies.md>), [maintaining-go-software-quality](<https://devfeed.tech/tags/maintaining-go-software-quality.md>), [mock-apis-go-testing](<https://devfeed.tech/tags/mock-apis-go-testing.md>), [reliable-go-codebase](<https://devfeed.tech/tags/reliable-go-codebase.md>), [resilient-go-application](<https://devfeed.tech/tags/resilient-go-application.md>), [scalable-go-software-systems](<https://devfeed.tech/tags/scalable-go-software-systems.md>), [table-driven-tests](<https://devfeed.tech/tags/table-driven-tests.md>), [table-driven-tests-go](<https://devfeed.tech/tags/table-driven-tests-go.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>)

### AI overview

Episode 11 of the Ultimate Software Design series explains how to implement application-layer tests in Go. It covers domain-level test organization, subtests, table-driven tests, mock APIs, dependency management, authentication tokens, context, and consistent error handling, with the goal of broad coverage using minimal database instances.

### Source excerpt

Introduction: Welcome to Episode 11 of our Ultimate Software Design series! In this episode, Bill delves into the intricacies of implementing robust application layer tests within Go projects, providing developers with essential strategies for creating scalable and maintainable software systems. Implement application layer tests that ensure comprehensive coverage with minimal database instances. Organize tests at the domain level using subtests for easier issue isolation and resilient code. Manage dependencies, authentication tokens, and context for smooth information flow and consistent error handling.

## Meta's TestGen-LLM uses verified LLM-generated improvements to expand existing unit-test coverage

DevFeed: [Meta's TestGen-LLM uses verified LLM-generated improvements to expand existing unit-test coverage](<https://devfeed.tech/articles/meta-s-new-llm-based-test-generator-is-a-sneak-peek-to-the-future-of-development-39094.md>)

Original publisher: [Read original article](<https://read.engineerscodex.com/p/metas-new-llm-based-test-generator>)

Author: Engineer's Codex

Published: 2024-02-23T07:34:54Z

Content type: article

Language: en

Sources: [Engineer's Codex](<https://devfeed.tech/sources/engineer-s-codex.md>)

Topics: [Meta](<https://devfeed.tech/topics/meta.md>), [unit test](<https://devfeed.tech/topics/unit-test.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Software Engineering](<https://devfeed.tech/topics/software-engineering.md>), [pull-requests](<https://devfeed.tech/topics/pull-requests.md>)

Tags: [ai](<https://devfeed.tech/tags/ai.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [developer](<https://devfeed.tech/tags/developer.md>), [development](<https://devfeed.tech/tags/development.md>), [llm](<https://devfeed.tech/tags/llm.md>), [meta](<https://devfeed.tech/tags/meta.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [software-engineering](<https://devfeed.tech/tags/software-engineering.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

This article examines Meta's TestGen-LLM, an internal system that uses large language models to generate candidate improvements for existing human-written unit tests. It describes an ensemble approach that filters candidates for correctness, improved code coverage, and non-regression before human review.

### Source excerpt

Meta's TestGen-LLM is a sneak peek to the future of developer productivity: specialized, orchestrated, and rigorously filtered.

## Screenshot Tests Are Manual Tests

DevFeed: [Screenshot Tests Are Manual Tests](<https://devfeed.tech/articles/screenshot-tests-are-manual-tests-30605.md>)

Original publisher: [Read original article](<https://ryanharter.com/blog/2023/10/screenshot-tests-are-manual-tests/>)

Published: 2023-10-17T16:00:00Z

Content type: opinion

Language: en

Sources: [Blogs on Ryan Harter](<https://devfeed.tech/sources/blogs-on-ryan-harter.md>)

Topics: [screenshot-testing](<https://devfeed.tech/topics/screenshot-testing.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [ui-testing](<https://devfeed.tech/topics/ui-testing.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>)

Tags: [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [screenshot-testing](<https://devfeed.tech/tags/screenshot-testing.md>), [testing](<https://devfeed.tech/tags/testing.md>), [ui-testing](<https://devfeed.tech/tags/ui-testing.md>)

### AI overview

The article explains that screenshot tests validate UI appearance and can reveal visual changes, but they do not validate application behavior. It argues that screenshot-based coverage can increase coverage numbers while still requiring manual review and complementary UI testing.

### Source excerpt

When I joined Dropbox almost 2 years ago, I was asked to help improve the screenshot testing experience, resulting in Dropshots. While I'd played around with early versions of Paparazzi by that point, many of our tests were too heavily reliant on full Activities and Fragments to make use of host side JUnit tests. The more I've worked with screenshot tests, the more I've come to understand their promises and limitations. What screenshot tests offer Screenshot testing can be really helpful to validate that elements on the screen are rendered as you expect. They can help you detect visual changes that might have otherwise gone unnoticed.

## KStore: A Kotlin Multiplatform Library for Saving and Restoring Objects to Disk

DevFeed: [KStore: A Kotlin Multiplatform Library for Saving and Restoring Objects to Disk](<https://devfeed.tech/articles/kstore-25913.md>)

Original publisher: [Read original article](<https://medium.com/@xxfast/kstore-1be37dd7bc22?source=rss-43bae76e8f81------2>)

Author: Isuru Rajapakse

Published: 2022-10-02T16:01:17Z

Content type: tutorial

Language: en

Sources: [Stories by Isuru Rajapakse on Medium](<https://devfeed.tech/sources/stories-by-isuru-rajapakse-on-medium.md>)

Topics: [Kotlin Multiplatform](<https://devfeed.tech/topics/kotlin-multiplatform.md>), [Library](<https://devfeed.tech/topics/library.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Coroutines](<https://devfeed.tech/topics/coroutines.md>), [JSON](<https://devfeed.tech/topics/json.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [CI/CD](<https://devfeed.tech/topics/cicd.md>), [Filesystems](<https://devfeed.tech/topics/filesystems.md>), [GitHub Actions](<https://devfeed.tech/topics/github-actions.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>)

Tags: [ci-cd](<https://devfeed.tech/tags/ci-cd.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [coroutines](<https://devfeed.tech/tags/coroutines.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [github-actions](<https://devfeed.tech/tags/github-actions.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [library](<https://devfeed.tech/tags/library.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [serialization](<https://devfeed.tech/tags/serialization.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

KStore is a small Kotlin Multiplatform library for saving and restoring serialized objects to disk. The article describes its coroutine-based API, storage operations, mutex-protected updates, and project tooling for testing, CI/CD, code coverage, and binary compatibility validation.

### Source excerpt

A tiny Kotlin multiplatform library to save and restore objects to and from the disk So I put out a new library, my first Multiplatform library. KStore is a tiny Kotlin multiplatform library that assists in saving and restoring objects to and from disk using kotlinx.coroutines, kotlinx.serializationand okio Why? A newer version of kotlinx.serialization was released and one thing caught my eye Integration with Okio's BufferedSource and BufferedSink Release 1.4.0-RC - Kotlin/kotlinx.serialization However, there was little to no documentation on how to use it. I scanned through the repository looking for tests but couldn't find any. I asked on slack Got nothing.. But I pulled it down and tried it out anyways. dependencies { implementation("org.jetbrains.kotlinx:kotlinx-serialization-json-okio:1.4.0") } Tried out the most obvious way and wrote up a test case Json.encodeToBufferedSink(value, FILE_SYSTEM.sink(path).buffer()) No luck. Asked around on slack once again Not a minute went by, and our lord and saviour himself descended from heaven to help me out After using use, it worked 🙌. His divinely presence inspired me to write out a bunch more test cases and put this out there in under ~48hrs GitHub - xxfast/KStore: A tiny Kotlin multiplatform library that assists in saving and restoring objects to and from disk using kotlinx.coroutines, kotlinx.serialisation and okio API KStore is inspired by RxStore, and it provides a simple API. Most of these interface methods are suspended, and can only be invoked from a suspended context. SuspendedCreate a storeval store: KStore<Pet> = storeOf("path/to/file")Get valueval mylo: Pet? = store.get() Or observe for changes val pets: Flow<Pet?> = store.updatesSet valuestore.set(mylo)Update a valuestore.update { pet: Pet? -> pet?.copy(age = pet.age + 1) } Note: this maintains a single mutex lock transaction, unlike get() and a subsequent set() Delete/Reset valuestore.delete() You can also reset a value back to its default. store.reset()Sel

## Building a test suite for the OONI Probe Android app

DevFeed: [Building a test suite for the OONI Probe Android app](<https://devfeed.tech/articles/building-a-test-suite-for-the-ooni-probe-android-app-40804.md>)

Original publisher: [Read original article](<https://www.bloco.io/blog/building-test-suite-ooni-probe-android>)

Author: Cláudia

Published: 2021-09-20T11:10:34Z

Content type: article

Language: en

Sources: [Blog - Bloco](<https://devfeed.tech/sources/blog-bloco.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [test](<https://devfeed.tech/topics/test.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [unit tests](<https://devfeed.tech/topics/unit-tests.md>), [ci](<https://devfeed.tech/topics/ci.md>), [Dependency injection](<https://devfeed.tech/topics/dependency-injection.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [clients](<https://devfeed.tech/tags/clients.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [continuous-integration](<https://devfeed.tech/tags/continuous-integration.md>), [dependency-injection](<https://devfeed.tech/tags/dependency-injection.md>), [test](<https://devfeed.tech/tags/test.md>), [ui](<https://devfeed.tech/tags/ui.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>)

### AI overview

This article describes work with OONI to improve the quality of its Probe Android app by building a comprehensive test suite. The work included test infrastructure, continuous integration, dependency injection, fake-data factories, UI tests, and unit tests. Over 15 days, the team wrote 43 UI tests and 201 unit tests, increasing code coverage from 10% to 73%.

### Source excerpt

Let us tell you how we've worked with OONI to improve the quality of their Probe Android app.

## Building a new snapshot fuzzer & fuzzing IDA

DevFeed: [Building a new snapshot fuzzer & fuzzing IDA](<https://devfeed.tech/articles/building-a-new-snapshot-fuzzer-fuzzing-ida-39713.md>)

Original publisher: [Read original article](<https://doar-e.github.io/blog/2021/07/15/building-a-new-snapshot-fuzzer-fuzzing-ida/>)

Author: Axel "0vercl0k" Souchet

Published: 2021-07-15T15:00:00Z

Content type: article

Language: en

Sources: [Diary of a reverse-engineer](<https://devfeed.tech/sources/diary-of-a-reverse-engineer.md>)

Topics: [Fuzzing/Fuzz testing](<https://devfeed.tech/topics/fuzzing.md>), [C++](<https://devfeed.tech/topics/c-plus-plus.md>), [Windows](<https://devfeed.tech/topics/windows.md>), [App](<https://devfeed.tech/topics/app.md>), [Emulator](<https://devfeed.tech/topics/emulator.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [bug](<https://devfeed.tech/topics/bug.md>), [cross-platform](<https://devfeed.tech/topics/cross-platform.md>)

Tags: [bochs](<https://devfeed.tech/tags/bochs.md>), [bochscpu](<https://devfeed.tech/tags/bochscpu.md>), [bug-bounty](<https://devfeed.tech/tags/bug-bounty.md>), [c-plus-plus](<https://devfeed.tech/tags/c-plus-plus.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [cross-platform](<https://devfeed.tech/tags/cross-platform.md>), [emulator](<https://devfeed.tech/tags/emulator.md>), [fuzzing](<https://devfeed.tech/tags/fuzzing.md>), [ida](<https://devfeed.tech/tags/ida.md>), [kvm](<https://devfeed.tech/tags/kvm.md>), [misc](<https://devfeed.tech/tags/misc.md>), [results](<https://devfeed.tech/tags/results.md>), [snapshot-fuzzing](<https://devfeed.tech/tags/snapshot-fuzzing.md>), [whv](<https://devfeed.tech/tags/whv.md>), [winhv](<https://devfeed.tech/tags/winhv.md>)

### AI overview

This article describes the development of a Windows snapshot-based fuzzer designed to target user-mode and kernel applications and services. It explains the planned use of hypervisor and KVM APIs, instrumentation, code coverage, crash detection, mutation, cross-platform support, and fast restoration, with IDA selected as a development target.

### Source excerpt

Introduction It is January 2020 and it is this time of the year where I try to set goals for myself. I had just come back from spending Christmas with my family in France and felt fairly recharged. It always is an exciting time for me to think and plan ...

## Syzkaller - Fuzzing ReactOS in 2020

DevFeed: [Syzkaller - Fuzzing ReactOS in 2020](<https://devfeed.tech/articles/syzkaller-fuzzing-reactos-in-2020-32781.md>)

Original publisher: [Read original article](<https://reactos.org/blogs/fuzzing-reactos/>)

Published: 2020-08-09T00:00:00Z

Content type: tutorial

Language: en

Sources: [Front Page on ReactOS Website](<https://devfeed.tech/sources/front-page-on-reactos-website.md>)

Topics: [Fuzzing/Fuzz testing](<https://devfeed.tech/topics/fuzzing.md>), [ReactOS](<https://devfeed.tech/topics/reactos.md>), [virtualization](<https://devfeed.tech/topics/virtualization.md>), [winapi](<https://devfeed.tech/topics/winapi.md>), [MSVC](<https://devfeed.tech/topics/msvc.md>), [qemu](<https://devfeed.tech/topics/qemu.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Oracle-VM-VirtualBox](<https://devfeed.tech/topics/vm-box.md>), [Windows](<https://devfeed.tech/topics/windows.md>), [GitHub Actions](<https://devfeed.tech/topics/github-actions.md>)

Tags: [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [free](<https://devfeed.tech/tags/free.md>), [fuzzing](<https://devfeed.tech/tags/fuzzing.md>), [github-actions](<https://devfeed.tech/tags/github-actions.md>), [google-summer-of-code](<https://devfeed.tech/tags/google-summer-of-code.md>), [msvc](<https://devfeed.tech/tags/msvc.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [os](<https://devfeed.tech/tags/os.md>), [qemu](<https://devfeed.tech/tags/qemu.md>), [react](<https://devfeed.tech/tags/react.md>), [reactos](<https://devfeed.tech/tags/reactos.md>), [virtualbox](<https://devfeed.tech/tags/virtualbox.md>), [virtualization](<https://devfeed.tech/tags/virtualization.md>), [win32](<https://devfeed.tech/tags/win32.md>), [winapi](<https://devfeed.tech/tags/winapi.md>), [windows](<https://devfeed.tech/tags/windows.md>)

### AI overview

This tutorial explains how to set up Syzkaller locally to fuzz ReactOS. It covers the required ReactOS build, virtualization software, Syzkaller and Golang setup, and reports that local fuzzing was running with about 110 WinAPI calls. It also describes ongoing work on Windows x86 support and KCOV-based code coverage.

### Source excerpt

Hello everyone. In this blog post, I will be talking about the steps to set up Syzkaller for ReactOS locally and start fuzzing. If you have been following the blog posts on the ReactOS website then you would have noticed that this is my Google Summer of Code 2020 Project. Now that Coding period 2 has officially come to an end and the work is nearing completion, this post will help others in setting up the fuzzer get started with fuzzing.

## Hello8Ball: Exploring Coroutine Testing with a Kotlin Sampler App

DevFeed: [Hello8Ball: Exploring Coroutine Testing with a Kotlin Sampler App](<https://devfeed.tech/articles/hello8ball-32055.md>)

Original publisher: [Read original article](<https://www.maiatoday.net/p/hello8ball/>)

Published: 2019-11-23T21:36:11Z

Content type: tutorial

Language: en

Sources: [maiatoday](<https://devfeed.tech/sources/maiatoday.md>)

Topics: [Coroutines](<https://devfeed.tech/topics/coroutines.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [test](<https://devfeed.tech/topics/test.md>), [CircleCI](<https://devfeed.tech/topics/circleci.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [App](<https://devfeed.tech/topics/app.md>)

Tags: [circleci](<https://devfeed.tech/tags/circleci.md>), [code](<https://devfeed.tech/tags/code.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [coroutine-testing](<https://devfeed.tech/tags/coroutine-testing.md>), [coroutines](<https://devfeed.tech/tags/coroutines.md>), [detekt](<https://devfeed.tech/tags/detekt.md>), [jacoco](<https://devfeed.tech/tags/jacoco.md>), [kotlinx](<https://devfeed.tech/tags/kotlinx.md>), [test](<https://devfeed.tech/tags/test.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

Hello8Ball is a toy sampler app for exploring coroutine testing in Kotlin. It simulates an 8 Ball and includes examples involving network calls, calculations, password generation, synonym lookup, and prime-number checks. The repository includes tests using kotlinx-coroutine-test, CircleCI test execution, detekt, JaCoCo coverage, and a branch converted to JUnit 5.

### Source excerpt

A sampler app to explore Coroutine testing. This is a toy app that simulates an 8 Ball. It can answer questions, find synonmyms, generate a password or check if a number is prime. It was created to make a situation where it makes sense to use coroutines to e.g. go on the network or make a calculation. Then I added tests for all the pieces using kotlinx-coroutine-test. As a bonus the repo is set up to run the tests on CircleCi. It has detekt setup and jacoco code coverage. There is also a branch where all the tests are converted to junit5. Devfest 2019 video This is the companion repo to the KotlinEveryWhereZA 2019 and DevFestZa 2019 talk. Slides are in the repo. code

## backlogs, lag, and waiting

DevFeed: [backlogs, lag, and waiting](<https://devfeed.tech/articles/backlogs-lag-and-waiting-20261.md>)

Original publisher: [Read original article](<https://elvis314.wordpress.com/2019/07/16/backlogs-lag-and-waiting/>)

Author: elvis314

Published: 2019-07-16T20:21:55Z

Content type: opinion

Language: en

Sources: [Mozilla Automation](<https://devfeed.tech/sources/mozilla-automation.md>)

Topics: [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [FIRST](<https://devfeed.tech/topics/first.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>), [Android](<https://devfeed.tech/topics/android.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Windows](<https://devfeed.tech/topics/windows.md>), [datacenter](<https://devfeed.tech/topics/datacenter.md>), [GPU](<https://devfeed.tech/topics/gpu.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [aws](<https://devfeed.tech/tags/aws.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [data](<https://devfeed.tech/tags/data.md>), [data-center](<https://devfeed.tech/tags/data-center.md>), [gpu](<https://devfeed.tech/tags/gpu.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [irc](<https://devfeed.tech/tags/irc.md>), [linux](<https://devfeed.tech/tags/linux.md>), [mozilla](<https://devfeed.tech/tags/mozilla.md>), [slack](<https://devfeed.tech/tags/slack.md>), [tests](<https://devfeed.tech/tags/tests.md>), [uncategorized](<https://devfeed.tech/tags/uncategorized.md>), [windows](<https://devfeed.tech/tags/windows.md>)

### AI overview

The article explains why Mozilla test jobs can experience backlogs and long wait times. It describes the platforms, configurations, infrastructure pools, and job volumes involved in running the tests, including Linux, Windows, macOS, Android, AWS, data-center machines, laptops, emulators, and real devices.

### Source excerpt

Many times each week I see a ping on IRC or Slack asking "why are my jobs not starting on my try push?" I want to talk about why we have backlogs and some things to consider in regards to ... Continue reading ->

## How trivago performs non-functional testing on every commit

DevFeed: [How trivago performs non-functional testing on every commit](<https://devfeed.tech/articles/building-fast-and-reliable-web-applications-27962.md>)

Original publisher: [Read original article](<https://tech.trivago.com/post/2018-10-12-rapidfirenonfunctionaltes/>)

Author: Frank Van Gemeren

Published: 2018-10-12T00:00:00Z

Content type: article

Language: en

Sources: [Trivago](<https://devfeed.tech/sources/trivago.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [Accessibility](<https://devfeed.tech/topics/accessibility.md>), [Availability](<https://devfeed.tech/topics/availability.md>)

Tags: [accessibility](<https://devfeed.tech/tags/accessibility.md>), [availability](<https://devfeed.tech/tags/availability.md>), [backend](<https://devfeed.tech/tags/backend.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [devops](<https://devfeed.tech/tags/devops.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [release-engineering](<https://devfeed.tech/tags/release-engineering.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [testing](<https://devfeed.tech/tags/testing.md>), [web](<https://devfeed.tech/tags/web.md>), [web-applications](<https://devfeed.tech/tags/web-applications.md>)

### AI overview

This article explains why testing should cover non-functional requirements such as performance, capacity, availability, scalability, and accessibility. It describes trivago's approach to making non-functional testing visible to developers on every commit and discusses the challenges of providing early feedback in a large codebase.

### Source excerpt

Testing your functionality is important, but what happens if other factors come into play? In this blog post we show how trivago handles non-functional testing for every commit and how we scaled it.

## Experiment: Adjusting SETA to run individual files instead of individual jobs

DevFeed: [Experiment: Adjusting SETA to run individual files instead of individual jobs](<https://devfeed.tech/articles/experiment-adjusting-seta-to-run-individual-files-instead-of-individual-jobs-20259.md>)

Original publisher: [Read original article](<https://elvis314.wordpress.com/2018/08/27/experiment-adjusting-seta-to-run-individual-files-instead-of-individual-jobs/>)

Author: elvis314

Published: 2018-08-27T18:17:18Z

Content type: article

Language: en

Sources: [Mozilla Automation](<https://devfeed.tech/sources/mozilla-automation.md>)

Topics: [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [experiment](<https://devfeed.tech/tags/experiment.md>), [test](<https://devfeed.tech/tags/test.md>), [tests](<https://devfeed.tech/tags/tests.md>), [tooling](<https://devfeed.tech/tags/tooling.md>), [uncategorized](<https://devfeed.tech/tags/uncategorized.md>)

### AI overview

The article reports an experiment to adjust SETA so it selects individual failing test files rather than entire test jobs. The experiment identified 171 tests and ran them in six jobs, while noting limitations involving failure types, configuration load balancing, and the effort required to produce unique test failures.

### Source excerpt

3.5 years ago we implemented and integrated SETA. This has a net effect today of reducing our load between 60-70%. SETA works on the premise of identifying specific test jobs that find real regressions and marking them as high priority. ... Continue reading ->

## Upgrading to Eclipse Photon

DevFeed: [Upgrading to Eclipse Photon](<https://devfeed.tech/articles/upgrading-to-eclipse-photon-22000.md>)

Original publisher: [Read original article](<http://blog.joda.org/2018/07/upgrading-to-eclipse-photon.html>)

Author: Stephen Colebourne (noreply@blogger.com)

Published: 2018-07-09T09:51:00Z

Content type: tutorial

Language: en

Sources: [Stephen Colebourne](<https://devfeed.tech/sources/stephen-colebourne.md>)

Topics: [ide](<https://devfeed.tech/topics/ide.md>), [Java](<https://devfeed.tech/topics/java.md>), [Java 9](<https://devfeed.tech/topics/java-9.md>), [modules](<https://devfeed.tech/topics/modules.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [Code review](<https://devfeed.tech/topics/code-review.md>), [Test coverage](<https://devfeed.tech/topics/coverage.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [code-quality](<https://devfeed.tech/tags/code-quality.md>), [eclipse](<https://devfeed.tech/tags/eclipse.md>), [github](<https://devfeed.tech/tags/github.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [ide](<https://devfeed.tech/tags/ide.md>), [install](<https://devfeed.tech/tags/install.md>), [installations](<https://devfeed.tech/tags/installations.md>), [java](<https://devfeed.tech/tags/java.md>), [java-9](<https://devfeed.tech/tags/java-9.md>), [maven-plugin](<https://devfeed.tech/tags/maven-plugin.md>), [modules](<https://devfeed.tech/tags/modules.md>), [plugins](<https://devfeed.tech/tags/plugins.md>), [update](<https://devfeed.tech/tags/update.md>), [zip](<https://devfeed.tech/tags/zip.md>)

### AI overview

A personal guide to upgrading to Eclipse Photon, covering its improved separation of test and main classpaths, support for Java 9 modules and Java 10 local variable type inference, JUnit 5, and code coverage assistance. It also describes installation options and a locally built GEBIT fork of the m2e-code-quality plugin.

### Source excerpt

I use Eclipse as my Java IDE. And the new release, Photon is now out. Photon is a large release, with lots of new features. The most important is the separation of the test and main classpaths, which has always been a point of pain in the IDE. Now it just works as you would expect, and the Maven plugin M2E correctly sets it up: Note the darker colour of the src/test classpath elements. Support for Java 9 (modules) and Java 10 (local variable type inferenece) is also present, ready for Java 11 in September. You can also use JUnit 5. It even tries to help you reach 100% code coverage! All in all, I feel this is a release where upgrading will make a difference to everyday coding. I've upgraded my own Eclipse installations, and it all went pretty well. You can either start from a clean install (I prefer the basic IDE without plugins so I can choose which ones to add). Or you can add Photon as an update site, and let Eclipse update itself. One problem I had was the plugin that connects Maven (M2E) to Checkstyle (Eclipse-CS), known as m2e-code-quality. Fortunately, the team at GEBIT have been maintaining a fork of the original plugin. However, they don't release it in binary form. As such, I had to build the plugin locally (no big deal - its a simple build). To simplify the process however, I've created a repository on GitHub with my Eclipse setup files, and a binary zip of the GEBIT forked plugin. To use just the m2e-code-quality GEBIT fork, download the zip file and add it as an update site. Here are some instructions. Thank you Eclipse team for a great release! PS. I won't be answering "how to" questions about upgrading Eclipse or the eclipse-setup repository. There are plenty of other places to ask questions, such as Stack Overflow or the Eclipse Forums.

## running tests by bugzilla component instead of test suite

DevFeed: [running tests by bugzilla component instead of test suite](<https://devfeed.tech/articles/running-tests-by-bugzilla-component-instead-of-test-suite-20258.md>)

Original publisher: [Read original article](<https://elvis314.wordpress.com/2017/12/21/running-tests-by-bugzilla-component-instead-of-test-suite/>)

Author: elvis314

Published: 2017-12-21T17:07:44Z

Content type: article

Language: en

Sources: [Mozilla Automation](<https://devfeed.tech/sources/mozilla-automation.md>)

Topics: [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Test coverage](<https://devfeed.tech/topics/coverage.md>), [Tool](<https://devfeed.tech/topics/tool.md>)

Tags: [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [testdev](<https://devfeed.tech/tags/testdev.md>), [tests](<https://devfeed.tech/tags/tests.md>), [tools](<https://devfeed.tech/tags/tools.md>), [treeherder](<https://devfeed.tech/tags/treeherder.md>)

### AI overview

The article explores running tests by Bugzilla component instead of test suite or random chunks. It describes potential benefits including component-level code coverage, more deterministic SETA results, component filtering in Treeherder, and easier handling of intermittent tests, while noting that the approach is not production-ready.

### Source excerpt

Over the years we have had great dreams of running our tests in many different ways. There was a dream of 'hyperchunking' where we would run everything in hundreds of chunks finishing in just a couple of minutes for all ... Continue reading ->

## The 100% code coverage problem

DevFeed: [The 100% code coverage problem](<https://devfeed.tech/articles/the-100-code-coverage-problem-28662.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2017/11/28/coveragproblem/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2017-11-28T00:00:00Z

Content type: opinion

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Code](<https://devfeed.tech/topics/code.md>), [test](<https://devfeed.tech/topics/test.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [coverage](<https://devfeed.tech/tags/coverage.md>), [quality](<https://devfeed.tech/tags/quality.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

The article explains why 100% code coverage is not a reliable quality measure or goal. Coverage records executed lines, but does not show whether tests contain meaningful assertions, cover all functionality, or verify correct interactions between components.

### Source excerpt

While you may be tempted to strive for 100% code coverage, that would be a horrible idea. Besides some code being hard to test, the concept of coverage is actually fundamentally limited.

## Measuring production code coverage with JaCoCo

DevFeed: [Measuring production code coverage with JaCoCo](<https://devfeed.tech/articles/measuring-production-code-coverage-with-jacoco-37828.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/production-code-coverage-jacoco/>)

Author: Carlos Alexandro Becker

Published: 2017-03-20T00:00:00Z

Content type: tutorial

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Code](<https://devfeed.tech/topics/code.md>), [Java](<https://devfeed.tech/topics/java.md>), [Puppet](<https://devfeed.tech/topics/puppet.md>), [Maven](<https://devfeed.tech/topics/maven.md>)

Tags: [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [coverage](<https://devfeed.tech/tags/coverage.md>), [jacoco](<https://devfeed.tech/tags/jacoco.md>), [java](<https://devfeed.tech/tags/java.md>), [maven](<https://devfeed.tech/tags/maven.md>), [monolith](<https://devfeed.tech/tags/monolith.md>), [production](<https://devfeed.tech/tags/production.md>), [puppet](<https://devfeed.tech/tags/puppet.md>)

### AI overview

This tutorial explains how to use JaCoCo in a Java production environment to generate production code coverage reports. It describes instrumenting a production application server, collecting binary report files, and compiling them into HTML reports to identify code that is not executed.

### Source excerpt

Microservices is the new fancy way of doing applications. Yet, most companies still have big and old monoliths in production. In fast evolving software of this size, it's usual to have lines of code which are never executed in production. Production code coverage reports can help us find those lines.

## Token capture via an llvm-based analysis pass

DevFeed: [Token capture via an llvm-based analysis pass](<https://devfeed.tech/articles/token-capture-via-an-llvm-based-analysis-pass-39700.md>)

Original publisher: [Read original article](<https://doar-e.github.io/blog/2016/11/27/clang-and-passes/>)

Author: Axel "0vercl0k" Souchet

Published: 2016-11-28T04:43:00Z

Content type: article

Language: en

Sources: [Diary of a reverse-engineer](<https://devfeed.tech/sources/diary-of-a-reverse-engineer.md>)

Topics: [LLVM](<https://devfeed.tech/topics/llvm.md>), [Compiler](<https://devfeed.tech/topics/compiler.md>), [Instrumentation](<https://devfeed.tech/topics/instrumentation.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Fuzzing/Fuzz testing](<https://devfeed.tech/topics/fuzzing.md>)

Tags: [analysis-pass](<https://devfeed.tech/tags/analysis-pass.md>), [clang](<https://devfeed.tech/tags/clang.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [compiler](<https://devfeed.tech/tags/compiler.md>), [fuzzing](<https://devfeed.tech/tags/fuzzing.md>), [instrumentation](<https://devfeed.tech/tags/instrumentation.md>), [llvm](<https://devfeed.tech/tags/llvm.md>), [misc](<https://devfeed.tech/tags/misc.md>), [pass](<https://devfeed.tech/tags/pass.md>)

### AI overview

This technical blog article introduces LLVM's modular compiler architecture and discusses how AFL uses compiler-based static instrumentation and code coverage to guide fuzzing. The supplied text ends before the article's full discussion is available.

### Source excerpt

Introduction About three years ago, the LLVM framework started to pique my interest for a lot of different reasons. This collection of industrial strength compiler technology, as Latner said in 2008, was designed in a very modular way. It also looked like it had a lot of interesting features that ...

## Automated Tests Help Developers Sleep Better

DevFeed: [Automated Tests Help Developers Sleep Better](<https://devfeed.tech/articles/automated-tests-help-developers-sleep-better-24959.md>)

Original publisher: [Read original article](<https://codeahoy.com/2016/11/12/automated-tests-help-developers-sleep-better/>)

Author: umer

Published: 2016-11-12T00:00:00Z

Content type: article

Language: en

Sources: [Code Ahoy - Articles](<https://devfeed.tech/sources/code-ahoy-articles.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [bug](<https://devfeed.tech/topics/bug.md>)

Tags: [automated](<https://devfeed.tech/tags/automated.md>), [bug](<https://devfeed.tech/tags/bug.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [developers](<https://devfeed.tech/tags/developers.md>), [integration](<https://devfeed.tech/tags/integration.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>)

### AI overview

The article argues that automated tests help developers catch bugs before release and reduce the burden of diagnosing production problems. It cautions that arbitrary code-coverage requirements can produce ineffective tests and recommends combining unit, integration, and other testing techniques.

### Source excerpt

In Pragmatic Programmer, Andy and Dave wrote: Most developers hate testing. They tend to test gently, subconsciously knowing where the code will break and avoiding the weak spots. Pragmatic Programmers are different. We are driven to find our bugs now, so we don't have to endure the shame of others finding our bugs later. There hasn't been any shortage of literature on the benefits of automated testing in the last 10-15 years. Yet it comes as a surprise to me that most developers still don't like to write unit tests. Some managers force developers to write tests by making an arbitrary code coverage number mandatory for releases. This is dangerous because the result is often low quality and ineffective tests that do not catch the bugs that they were supposed to. But why do some developers dislike testing? One possible explanation is that they don't buy the idea. Software developers are very smart people and they cannot be coerced into accepting an idea just because management thinks its great. In their defense, the management often fails to coach or convey the idea that automated tests benefit developers the most: they are written by the developers, for the developers themselves. They help developers sleep better at night. Automated tests are very good at catching bugs before the code is released - not all the bugs, but most of them. Software developers, whether on-call or not, are on the hook for any bugs in their code. When there's a bug that affects millions of users, it's the developers who have to get out of their beds at 2am or stay late evenings to provide a fix. Not to mention the embarrassment of introducing a bug that irritated thousands/millions of users or resulted in lost revenue. It takes a long time to find the root cause just because at the time, a developer failed to take a break from implementing the functionality to think about all the ways it could break and write good tests to ensure that the bug was caught before production release. Developers m

## Nim Code Coverage

DevFeed: [Nim Code Coverage](<https://devfeed.tech/articles/nim-code-coverage-30829.md>)

Original publisher: [Read original article](<https://hookrace.net/blog/nim-code-coverage/>)

Published: 2016-10-31T23:00:00Z

Content type: tutorial

Language: en

Sources: [Dennis Felsing](<https://devfeed.tech/sources/dennis-felsing.md>)

Topics: [Nim](<https://devfeed.tech/topics/nim.md>), [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Compiler](<https://devfeed.tech/topics/compiler.md>)

Tags: [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [compiler](<https://devfeed.tech/tags/compiler.md>), [nim](<https://devfeed.tech/tags/nim.md>)

### AI overview

A tutorial on generating Nim code coverage reports with gcov and lcov. It shows how to enable Nim line information and compiler coverage flags, while noting that optimization and dead-code elimination can exclude impossible code and uncovered functions from coverage results.

### Source excerpt

Creating code coverage reports with Nim is surprisingly easy. You can simply use the good old gcov and lcov tools. Nim can be told to insert its own line information with the --debugger:native command line parameter. Here's the small example program we're looking at: var x = 0 if x > 1: echo "foo" echo "bar" Note that if we change the condition to if false: the Nim compiler optimizes the impossible code away and it will not count as uncovered. The same thing can happen with entire uncovered functions when optimizations and dead code elimination are enabled. The file is saved as x.nim. Here's the script I use to create the code coverage report: #!/bin/sh rm -rf *.info html nimcache nim --debugger:native --passC:--coverage --passL:--coverage c x lcov --base-directory . --directory . --zerocounters -q ./x lcov --base-directory . --directory . -c -o x.info lcov --remove x.info "lib/*" -o x.info # remove Nim system libs from coverage genhtml -o html x.info You can look at the final html report generated.

## The hidden cost of code coverage

DevFeed: [The hidden cost of code coverage](<https://devfeed.tech/articles/the-hidden-cost-of-code-coverage-28650.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2016/09/01/coveragecost/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2016-09-01T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [test-coverage](<https://devfeed.tech/topics/test-coverage.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Android Studio](<https://devfeed.tech/topics/android-studio.md>), [Testing](<https://devfeed.tech/topics/testing.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-studio](<https://devfeed.tech/tags/android-studio.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [build](<https://devfeed.tech/tags/build.md>), [code-coverage](<https://devfeed.tech/tags/code-coverage.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [testing](<https://devfeed.tech/tags/testing.md>), [tests](<https://devfeed.tech/tags/tests.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

This tutorial explains that enabling code coverage with JaCoCo can significantly slow Gradle builds, even when tests are not being run. It recommends using a build flag so coverage runs only when needed, such as after unit tests or during CI builds.

### Source excerpt

Code coverage is an awesome way to motivate you and your team to write more tests. But did you know that simply enabling it slows down your build significantly?

[Next page](<https://devfeed.tech/tags/code-coverage.md?cursor=WyIyMDE2LTA5LTAxVDAwOjAwOjAwKzAwOjAwIiwgImE0N2NiM2Y2LWQ2OWMtNDE5Ny05OTk3LTRlYWUwMjE2MGUwYyJd>)