Leave a failing test before you go on vacation - Freek Van der Herten's blog on Laravel, PHP and AI
https://freek.dev/3156-leave-a-failing-test-before-you-go-on-vacation
Every year I dread coming back from vacation not because of the work, but because I have no idea where I left off. A failing test, a well-written TODO, and a slow first day back are all you need to ease back in.
That time it tried to delete all my tests — Massively Parallel Procrastination
https://blog.fsck.com/2026/04/30/that-time-it-tried-to-delete-all-my-tests/
When you're writing prompts, think about the model as a lazy pedant.
How could it do something that's technically what you asked, but not at all what you wanted?
Are you pushing it in a direction that's going to cause it to get desperate out and look for shortcuts?
How could you clarify what you're asking to help the model do the right thing?
Red/green TDD - Agentic Engineering Patterns - Simon Willison's Weblog
https://simonwillison.net/guides/agentic-engineering-patterns/red-green-tdd/#atom-everything
Test-first development helps protect against both of these common mistakes, and also ensures a robust automated test suite that protects against future regressions. As projects grow the chance that a new change might break an existing feature grows with them. A comprehensive test suite is by far the most effective way to keep those features working.
Verification-First Development • Buttondown
https://buttondown.com/hillelwayne/archive/verification-first-development/
before writing code, put in place some means of verifying that the code is correct, or at least have an idea of what you'll do.
Depth is all you need: how Antithesis crushes Gradius
https://antithesis.com/blog/2025/gradius/
Antithesis’ ability to play like a computer, not a human being, is central both to finding bugs and beating side-scrolling shooters.
How to fix Storybook screenshot testing | Tiger Oakes
https://tigeroakes.com/posts/storybook-test-runner-screenshots/
As an alternative to Chromatic, I’ve been using Storybook’s Test Runner to power screenshot tests for Microsoft Loop. We configure the test runner to run in CI and take a screenshot of every story. However, the initial implementation based on the official Storybook docs was very flaky due to inconsistent screenshots of the same story. Here are some tips to reduce flakiness in your Storybook screenshot tests.
Storybook Test sneak peek
https://storybook.js.org/blog/storybook-test-sneak-peek/
At Storybook, we believe there’s still hope. For months we’ve been building Storybook Test, a tool for fast, flake-free UI tests. And we’re finally ready to share it with you.
Unit testing React components without a DOM – simonsmith.io – Portfolio and blog of a London based front-end web developer
http://simonsmith.io/unit-testing-react-components-without-a-dom/?imm_mid=0d3af7&cmp=em-web-na-na-newsltr_20150617
the idea of shallow rendering is to instantiate a component and get the result of its render method, which is a ReactElement. From here you can do things like check its props and children and verify it works as expected.
Unit testing React components without a DOM – simonsmith.io – Portfolio and blog of a London based front-end web developer
http://simonsmith.io/unit-testing-react-components-without-a-dom?cmp=em-web-na-na-newsltr_20150617&imm_mid=0d3af7
the idea of shallow rendering is to instantiate a component and get the result of its render method, which is a ReactElement. From here you can do things like check its props and children and verify it works as expected.
Meet Runscope — Runscope Blog
http://blog.runscope.com/posts/meet-runscope
Tools that give application developers visibility into the conversations their apps are having with the services they rely on. Tools that make debugging and testing your API integrations as simple as any other line of code.
M/M/c queue - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/M/M/c_queue
In queueing theory, the M/M/c queue is a multi-server queueing model.[1] In Kendall's notation it describes a system where arrivals form a single queue and are governed by a Poisson process, there are c servers and job service times are exponentially distributed.[2] It is a generalisation of the M/M/1 queue which considers only a single server. The model with infinitely many servers is the M/M/∞ queue.
Using Travis-CI with Python and Django - David Cramer's Blog
http://justcramer.com/2012/05/03/using-travis-ci/
I’ve been using Travis-CI for a while now. Both my personal projects, and even several of the libraries we maintain at DISQUS rely on it for Continuous Integration. I figured it was about time to confess my undenying love for Travis, and throw up some notes about the defaults we use in our projects.
Using Travis-CI with Python and Django - David Cramer's Blog
http://justcramer.com/2012/05/03/using-travis-ci
I’ve been using Travis-CI for a while now. Both my personal projects, and even several of the libraries we maintain at DISQUS rely on it for Continuous Integration. I figured it was about time to confess my undenying love for Travis, and throw up some notes about the defaults we use in our projects.
Travis CI: Building a Python Project
http://about.travis-ci.org/docs/user/languages/python/
This guide covers build environment and configuration topics specific to Python projects. Please make sure to read our Getting Started and general build configuration guides first.
Travis CI: Building a Python Project
http://about.travis-ci.org/docs/user/languages/python
This guide covers build environment and configuration topics specific to Python projects. Please make sure to read our Getting Started and general build configuration guides first.
Writing Testable JavaScript // Speaker Deck
https://speakerdeck.com/rmurphey/writing-testable-javascript
Unit testing in node.js
http://caolanmcmahon.com/posts/unit_testing_in_node_js
Lets walk through a basic node.js program using Test Driven Developement (TDD) and nodeunit. This program asks the user to enter a number, doubles it and returns the result.
Quantified Awesome: Development-driven behaviour and integrated tests for life | sacha chua :: living an awesome life
http://sachachua.com/blog/2011/11/quantified-awesome-development-driven-behaviour
I am pleasantly boggled that this is possible, and will probably write all sorts of odd tests now. Because Cucumber can fill in web forms, click on stuff, and so on, I might even be able to use it to check information on other sites. (When I check my mail, then all the messages in my inbox should be less than a week old?)
Behat - BDD in PHP
http://everzet.com/Behat
Behat was inspired by Ruby's Cucumber project and especially it's syntax part (Gherkin). It tries to be like Cucumber with input (Feature files) and output (console formatters)
Agile in a Flash: Acceptance Test Design Principles
http://agileinaflash.blogspot.com/2010/07/acceptance-test-design-principles.html
"Abstract; Bona fide; Cohesive; Decoupled; Expressive; Free of duplication; Green"
Making development with Django more fun with BDD under Freshen | Francisco Souza
http://www.franciscosouza.net/2010/06/making-development-with-django-more-fun.html
"Freshen is an acceptance testing framework for Python, inspired by Cucumber and has the same goal: make BDD fun, but using Python instead of Ruby. Freshen uses the same syntax of Cucumber (Gherkin Syntax) and runs as a plugin of Nose, a powerful Python tool for using daily when you with TDD"
Joe Dog Software - Siege Home
http://www.joedog.org/index/siege-home
"Siege is an http load testing and benchmarking utility. It was designed to let web developers measure their code under duress, to see how it will stand up to load on the internet. Siege supports basic authentication, cookies, HTTP and HTTPS protocols. It lets its user hit a web server with a configurable number of simulated web browsers. Those browsers place the server "under siege." "
Mojo Test Framework
http://developer.palm.com/index.php?id=1827&option=com_content&view=article
"Where Mojo.Test diverges from the usual xUnit-type framework is in support for testing components that depend on asynchronous callbacks. Mojo.Test provides a callback function for results that can be used at the end of a chain of any number of callbacks from the component under test. It also maintains a test timer, which will cause the failure of any test that doesn't report a result within a configurable time limit. "
JSLint Commandline Shenanigans
http://whereisandy.com/code/jslint
"y running JSLint on all of our javascript files as part of our development process, we can find these nasty bugs before they start!Turns out, Spidermonkey isn't just faster than Rhino, it's a lot faster (at least to start up)."
Lessons Learned: Work in small batches
http://startuplessonslearned.blogspot.com/2009/02/work-in-small-batches.html
"Software should be designed, written, and deployed in small batches.Small batches mean faster feedback. Small batches mean problems are instantly localized. Small batches reduce risk. Small batches reduce overhead. "
Screencast: Install Internet Explorer on OSX using VirtualBox (updated X2) | 10 Volt Media Blog
http://www.10voltmedia.com/blog/2008/12/screencast-install-internet-explorer-on-osx-using-virtualbox
"In this screencast I’ll show you how to set up a virtual machine for Internet Explorer 7 on OSX in about 15 minutes without spending a penny."
Continuous Deployment at IMVU: Doing the impossible fifty times a day. « Timothy Fitz
http://timothyfitz.wordpress.com/2009/02/10/continuous-deployment-at-imvu-doing-the-impossible-fifty-times-a-day
" Back to the deploy process, nine minutes have elapsed and a commit has been greenlit for the website. The programmer runs the imvu_push script. The code is rsync’d out to the hundreds of machines in our cluster. Load average, cpu usage, php errors and dies and more are sampled by the push script, as a basis line. A symlink is switched on a small subset of the machines throwing the code live to its first few customers. A minute later the push script again samples data across the cluster and if there has been a statistically significant regression then the revision is automatically rolled back. If not, then it gets pushed to 100% of the cluster and monitored in the same way for another five minutes. The code is now live and fully pushed. This whole process is simple enough that it’s implemented by a handfull of shell scripts. "
gaeunit - Google Code
http://code.google.com/p/gaeunit
"GAEUnit is a unit test framework that helps to automate testing of your Google App Engine application. With a single configuration change (it can be completed within 30 seconds), your unit tests can be run in the real GAE app server environment using a web browser. "
Beware of the Dog | JoeDog / Siege
http://www.joedog.org/JoeDog/Siege
"Siege is an http regression testing and benchmarking utility. It was designed to let web developers measure the performance of their code under duress, to see how it will stand up to load on the internet. Siege supports basic authentication, cookies, HTTP and HTTPS protocols. It allows the user hit a web server with a configurable number of concurrent simulated users. Those users place the webserver "under siege." "
Guantanamo - Ashcroft - Confluence
http://docs.codehaus.org/display/ASH/Guantanamo
"Guantanamo is a tool that can delete all code lines that are not covered by tests. All code is guilty until tested innocent. Send the untested code to Guantanamo!"
PHPUnit - Trac
http://www.phpunit.de
"a member of the xUnit family of testing frameworks and provides both a framework that makes the writing of tests easy as well as the functionality to easily run the tests and analyse their results."
Writing Tests [PHP-QAT: Quality Assurance Team]
http://qa.php.net/write-test.php
"A phpt test is a little script used by the php internal and quality assurance teams to test PHP's functionality."