How to avoid the high Mailosaur costs when running Cypress email tests.
Load the testing configuration and environment variables from separate JSON files.
Using the operating system environment variable to avoid injecting Cypress variable into the browser.
How I sell online Cypress training courses - an interview with UNmiss podcast.
How to confirm the emails sent using SendGrid work correctly.
How Cypress version 12 retries the chains of multiple query commands.
How a Cypress test can control the beforeEach hook behavior.
How to both simulate a slow-loading plugin and to wait for it to load from a Cypress test.
How a Cypress test can confirm the polyfill is working.
How to pass specific environment variables into Cypress tests.
Cypress tests can stub problematic browser API method calls.
Cypress tests run in the browser and make it simple to spy or subscribe to the window events.
My recent presentation about testing at AllThingsOpen conference.
How we use the UserAgent header to run the Cypress web mobile tests.
Confirm the onClick handler is executed when clicking on the button component.
How to replace the confusing cy.then command with the less confusing cy.later command.
How to scrape the changed blog posts and upload to Algolia.
Email Cypress test results using cypress-email-results plugin.
How to run the tests simply by clicking on a checkbox in the pull request.
Solving different Wordle game implementations via Page Objects
How to select the tests to run using the GitHub pull request checkboxes.
How to tag your Cypress tests to make sure anyone can quickly test the changes.
We made the Cypress documentation exceptional by avoiding these mistakes.
Try to make your code snippets the real things someone can paste into the file and use right away.
How I answer a typical user question with a tested Cypress example
How to track the written tests using the Cypress test statuses
How to track the written tests using the Cypress test statuses
Resolving a user issue through the most appropriate series of actions
How to step through the visibility code to determine why Cypress thinks an element is invisible during the test
Testimony in favor of adopting strict Net Zero building stretch code in Massachusetts
How to write effective React tests using Cypress
How to release a well-tested library that never breaks the users' projects
How to develop software without wasting time planning or ignoring important parts of the project
How to derive multiple benefits from writing software.
Looking at my personal daily task logs from the past 18 months
Run end-to-end Cypress tests against Vercel preview deploys using GitHub Actions
Moving from Jest + RTL to Cypress + @testing-library/cypress for testing React components
Do not pay people to destroy the planet.
Comparing React components pixel by pixel to catch style problems
How to refactor loading JSON fixtures for simplicity
Moving from end-to-end to component and unit tests
Use tests and automatic dependency updates to keep examples up to date with the latest versions of the relevant library. Make it visible with dependency version badges.
How I see end-to-end and component and unit tests working together
How to scrape static site from GitHub Action using Algolia.
How to test static sites three times before and after deployment to GitHub pages.
90-second pitch for CitizenClimateLobby I gave at PKG meeting at MIT.
How to bypass user interface to directly dispatch actions to Angular 8 application from Cypress end-to-end tests.
How to use Percy.io visual diffing service to prevent regressions in terminal programs.
How to patch fix installed NPM module to avoid waiting for an official bug fix.
How to bypass user interface when writing end-to-end tests.
How to perform end-to-end API testing using Cypress test runner and take advantage of server logs.
How to capture console.log, console.error and even DEBUG=... logs.
A few tips on how to use Zeit Now v2 serverless with TypeScript and a little bit of testing.
Use a separate environment variable name to avoid NPM tricking you.
How to use Maybe Monad to make your server middleware a little bit easier to reason about.
How to write a web application using a state machine and Hyperapp framework.
How to print from your Node programs in formats compatible with 3rd party logging tools.
How to quickly mock process.env during unit testing.
Must have sections, badges, flow.
Quickly stringing data transformation using standard Ramda functions.
Notes from DevOps meetup panel on testing.
Perform any action based on commits since last action.
Automatic period dependency update without much hassle.
How I publish modules for older versions of Node.
How to deploy to GitHub pages from CI using SSH to authenticate.
Sometimes code refactoring removes need for advanced mocking in tests.
Do not mock your internal modules, mock system APIs instead!
Setting up a rock solid NPM module with semantic release in 30 seconds.
Refactor code using functional approach (Maybe, immutable).
Collecting all inputs to each function to figure out missing test data.
Deriving Y Combinator that makes recursive functions without assignments possible.
Array or Observable - Ramda can do both!
How to ensure your Curl code snippets are working, plus generate documentation.
Replacement for testing pyramid.
How to patch a bug, use the fix in prod and submit the pull request in five minutes.
How to do snapshot testing if the data frequently changes?
Writing tests should not be an afterthought.
My favorite semantic release plugins.
How to update the code comments during program execution.
How exchanging a set of streams solves component communication.
4 Ops things that I am excited about today.
Links to additional information included in my CycleCond 2016 presentation.
How to use semantic versioning with external services.
What to do if you want to compose multiple functions (hint - make them unary).
How I came up with idea and how I wrote wiseli
A single data structure holding program's state has a name - database.
How to write innovative, unusual and simply cool software.
How to use ES6 and target older NodeJS platforms without mangling the code to the lowest common denominator
My build process that can precisely target any Nodejs environment using Rollup, ES6 Feature tests and Babel.
Single function modules, flat libraries and applications.
An instantly loading, self-rewriting application using ServiceWorker - it is like server rendering inside your browser.
Generate the initial HTML markup from web app at build time to avoid blank screen.
Remove the empty page flicker on web application startup.
How to pass logic instead of data in functional programming.
The most interesting presentations I have seen last month.
How to finish strong in any hackathon.
Leave hooks in the AngularJS application to allow measuring how long individual actions take.
Remove unnecessary code while preserving the same code semantics.
Change live Angular application plus unit test private code from Node.
Leave executable examples inside source files for future reference.
How to design a simple to use and powerful library API.
What is wrong with Google Play? Is there anyone who listens to any music at that company?
Simple end to end testing via iframe API.
Use script tag attributes to pass config values.
Profiling and speeding up a function using Chrome and v8-natives.
Summary of the AngularJS performance lessons learnt.
Thunkifying is currying, argument reordering and middleware stacks.
User acceptance testing with code coverage information using was-tested.
You should use iterator methods for clarity and fewer side effects.
Proposal for The O'Reilly Software Architecture Conference 2015
Measuring how close a library follows semver semantics when publishing new releases.
Eliminate variables and functions via flexible selective application.
Check if your current module breaks other modules before publishing.
Profiling and speeding up AngularJs application step by step using Chrome DevTools code snippets
A function can configure itself via options argument to keep API clean and simple.
Reflecting on the first year of blogging about software development.
If I had to design static source code analysis service
Grunt plugins for tightening a project - linting, complexity, todos, etc.
Writing a functional adaptor makes a nice interview question.
Run unit tests in production environment using lazy-test
Easily test code in private closures using test-mole.
How to open source pieces of your software
Example refactoring a block of code containing OR condition
A small team can produce high quality software without exhaustive and long testing cycles.
We use assertions in our unit tests instead of built-in matchers.
Same simple problem solved in different programming styles.
Keeping the same load order of files and tests can lead to hidden bugs.
Keep dependecies up to date to get bug and performance fixes, not features.
Use lazy and helpful assertions instead of Jasmine matchers in the unit tests.
One can easily apply too much or wrong type of curry.
Make constructor functions work without "new" keyword in callbacks.
Combining functions into custom iterator callbacks and using _ will be easier if you put callback function first and data second.
Number of input data checks depends on the distance from the caller.
Making my own clone of the popular browser game.
Examples of using lodash, angular, check-types, ramda assertions
How to prevent hard to debug AngularJS injection errors due to minified code.
Catch all possible errors using both global and angular error hooks.
How to develop AngularJS applications in offline mode.
Send basic information with markup to generate low res page preview.
Using single time estimate for a task leads to inaccurate plans.
An example of a weird browser behavior traced back to the minification step.
Checking input arguments before doing any computation helps to quickly debug problems.
Using different linting settings depending on the code age
How I categorize every piece of knowledge about software development
How to get many useful things from unit test coverage information.
How to get many useful things from unit tests
Large projects have lots of downsides, split them up.
Linting, CI, badges and pre-commit hooks for Node project.
Measuring and increasing number of jshint settings.
Keep dependencies up to date using next-update
Split large projects into small modules.
Run extensive testing from clean environment before pushing code to remote repo.
Run unit tests on every commit using git hook.
Quickly verify that necessary top level dependencies are installed.