Craig Atkinson
Home
Blog
About
  • Verifying order of React elements with React Testing Library

    Apr 6, 2021 React testing

    Recently I was working on sorting rows in a table in React and I wanted to be able to verify the rows sorted into the correct order. The table shows flaky tests (that is, tests that intermittently fail) and is built with Material Table. Material Table conveniently supports sorting out of the box by clicking on the …

    Read More
  • Stop lighting money on fire: Seven tips to improve developer productivity

    Mar 28, 2021 development productivity tools

    Software engineering teams are a critical component of many companies, where the effectiveness of these teams can have a significant impact on the company's success. But how many organizations specifically focus on helping their developers be more productive? Making investments such as these in improving developer …

    Read More
  • Customizing Recharts graphs for React and testing them with Cypress

    Mar 14, 2021 React Recharts testing Cypress

    After I added the ability to collect and store code coverage stats in the Projektor test reporting tool, I wanted to also add a graph that showed the trend of code coverage over time. Then users could track their repo's code coverage to see if was increasing, decreasing, or staying the same. The Projektor UI is built …

    Read More
  • Using the GitHub API with Kotlin

    Mar 10, 2021 github Kotlin

    Recently as part of Projektor test report project, I wanted to add the capability to comment directly on pull requests with links to the test report, code coverage stats, etc. That way users could get easier and faster access to the information than searching through the CI output to find the link to the Projektor test …

    Read More
  • Improving Postgres query performance with explain/analyze

    Mar 7, 2021 performance database Postgres

    Database queries slower than you'd like? With Postgres' built-in explain/analyze capability you can identify what's making the query slow and fix it. In this example, we'll analyze the performance of query called as part of an API GET endpoint. First, we'll seed our test database with enough data to get meaningful …

    Read More
  • Integrating database access and management with Flyway and jOOQ into a Kotlin Ktor app

    Feb 28, 2021 Kotlin Ktor jOOQ database Gradle Docker Postgres

    One of my goals when I started a learning project a couple of years ago was to get more hands-on experience with Kotlin co-routines, so I explored app frameworks that natively supported co-routines. I landed on Ktor, an open-source framework from JetBrains (creators of Kotlin) that supports co-routines throughout the …

    Read More
  • Individually release different artifacts from monorepo with GitHub Actions using tags

    Feb 24, 2021 CI github github actions

    For the Projektor open-source test reporting project I wanted to keep all the code in a single mono repo to make it easy to work on and manage. But over time as the project evolved it grew into multiple deployable artifacts, and I wanted to be able to release each of those components independently as needed: Server …

    Read More
  • Kotlin test assertions with informative failure messages using Strikt

    Feb 21, 2021 kotlin testing

    When I started writing Kotlin code a couple of years ago, one of the main things I missed after previously writing tests with Groovy/Spock were the easy yet powerful assertions with Groovy's power assert - not to mention the expressive failure messages when a test failed. Groovy's power assert prints out the …

    Read More

Craig Atkinson

Software engineer, continually curious, highly caffeinated.
Read More

Featured Posts

  • Stop lighting money on fire: Seven tips to improve developer productivity

Recent Posts

  • Verifying order of React elements with React Testing Library
  • Stop lighting money on fire: Seven tips to improve developer productivity
  • Customizing Recharts graphs for React and testing them with Cypress
  • Using the GitHub API with Kotlin
  • Improving Postgres query performance with explain/analyze
  • Integrating database access and management with Flyway and jOOQ into a Kotlin Ktor app
  • Individually release different artifacts from monorepo with GitHub Actions using tags
  • Kotlin test assertions with informative failure messages using Strikt

Categories

DEVELOPMENT 8 TESTING 3 CI 2 REACT 1

Tags

KOTLIN 3 TESTING 3 DATABASE 2 GITHUB 2 POSTGRES 2 REACT 2 CI 1 CYPRESS 1 DEVELOPMENT 1 DOCKER 1 GITHUB-ACTIONS 1 GRADLE 1 INDEX 1 JOOQ 1
All Tags
CI1 CYPRESS1 DATABASE2 DEVELOPMENT1 DOCKER1 GITHUB2 GITHUB-ACTIONS1 GRADLE1 INDEX1 JOOQ1 KOTLIN3 KTOR1 PERFORMANCE1 POSTGRES2 PRODUCTIVITY1 REACT2 RECHARTS1 TESTING3 TOOLS1
[A~Z][0~9]

Copyright © 2021 CRAIG ATKINSON. All Rights Reserved