Home / Companies / Buildkite / Blog / August 2022

August 2022 Summaries

3 posts from Buildkite

Filter
Month: Year:
Post Summaries Back to Blog
Automated tests are essential for development teams to maintain and enhance applications efficiently, but they must be deterministic to ensure consistent results, as flaky tests can undermine the benefits of continuous integration and delivery (CI/CD) by reducing developers' trust. To address flaky tests, developers should adopt a proactive approach by fixing them immediately upon identification, documenting any details related to their flakiness, and analyzing potential causes such as asynchronous waits, concurrency issues, non-deterministic code, environmental differences, improper assumptions, and order dependencies. Tools like Buildkite Test Analytics can aid in identifying and resolving flaky tests by offering features such as automated tracing, performance monitoring, and integration with various CI tools, thereby improving developer productivity and reducing the time spent rerunning unreliable tests.
Aug 17, 2022 1,681 words in the original blog post.
Flaky tests are a frustrating and costly issue in software development, causing tests to pass or fail unpredictably without any changes to the code or test environment. These unreliable test results can stem from various factors such as inconsistencies in the build environment, timing issues, or dependencies on test execution order, leading to decreased confidence in testing processes and slowing down CI/CD pipelines. They not only conceal crucial design problems but also waste resources and time as developers repeatedly analyze and retest code. Addressing flaky tests involves identifying and fixing their causes, rerunning tests to confirm flakiness, and potentially grouping or disabling problematic tests to maintain release speed. Buildkite recommends resolving or replacing flaky tests to enhance reliability and reduce interruptions, with their Test Analytics tool offering real-time insights to help manage these issues across any CI/CD platform.
Aug 16, 2022 1,326 words in the original blog post.
Bluecore, a multichannel personalization platform for retail, transitioned to using Buildkite for continuous integration (CI) after outgrowing their previous provider's limitations and pricing model. Staff Software Engineer Shray Kumar explains that the move was driven by the need for a more customizable and efficient CI setup, which Buildkite provided with its ability to run on Bluecore's own infrastructure, reducing build times from 45 minutes to 15 minutes and allowing for further optimizations. The migration process was swift, facilitated by a script that transferred 90% of their projects to Buildkite seamlessly. The platform's plugin system enabled Bluecore to customize their CI setup for secret management and test coverage, among other things, while their team developed an autoscaler for Google Cloud to manage resources effectively. Hosting CI on their infrastructure has improved efficiency, reduced costs, and allowed engineers to troubleshoot directly on their nodes, enhancing control and security.
Aug 04, 2022 953 words in the original blog post.