Relocation & HR Trends

How to reset Heroku databases with the Scheduler

Posted by Max Kuipers

If you're using a standard Heroku setup with a postgres database, resetting the database is usually as easy as issuing the command heroku pg:reset DATABASE. However, if you want to schedule a daily reset with the Heroku Scheduler, you'll have to get a bit more creative since you are unable to call heroku pg:reset DATABASE from a Heroku instance.

Read More

The Road to Deploy When Ready

Posted by John Wood

Our deployment process at UrbanBound has matured considerably over the past year. In this blog post, I’d like to describe how we moved from prescribed deployment windows with downtime, to a deploy-when-ready process that could be executed at any point in time.

Read More

Using Page Objects for More Readable Feature Specs

Posted by John Wood

Feature specs are great for making sure that a web application works from end to end. But feature specs are code, and like all other code, the specs must be readable and maintainable if you are to get a return on your investment. Those who have worked with large Capybara test suites know that they can quickly become a stew of CSS selectors. It can make the tests difficult to read and maintain if CSS selectors are sprinkled around through the suite. This is even more problematic if the name of the CSS selector doesn’t accurately reflect what the element actually is or does.

Read More

Tips and Tricks for Dubugging and Fixing Slow/Flaky Capybara Specs

Posted by John Wood

In a previous post, I wrote about how the proper use of Capybara’s APIs can dramatically cut back on the number of flaky/slow tests in your test suite. But, there are several other things you can do to further reduce the number of flaky/slow tests, and also debug flaky tests when you encounter them.

Read More

Fix Flaky Feature Tests by Using Capybara's APIs Properly

Posted by John Wood

A good suite of reliable feature/acceptance tests is a very valuable thing to have. It can also be incredibly difficult to create. Test suites that are driven by tools like Selenium or Poltergeist are usually known for being slow and flaky. And, flaky/erratic tests can cause a team to lose confidence in their test suite, and question the value of the specs as a whole. However, much of this slowness and flakiness is due to test authors not making use of the proper Capybara APIs in their tests, or by overusing calls to sleep to get around race conditions.

Read More

Migrating Data - Rails Migrations or a Rake Task?

Posted by John Wood

I’ve always thought that Migrations were one of Rails’ best features. In one of the very first projects I worked on as a n00b software engineer straight out of college, schema and data migrations were a very large, and painful, part of that project’s deployment process. Being able to specify how the schema should change, and being able to check in those changes along with the code that depends on those changes, was a huge step forward. The ability to specify those changes in an easy to understand DSL, and having the ability to run arbitrary code in the migration to help make those changes, was simply icing on the cake.

Read More

Subscribe to the UrbanBound Blog

Webinar: How to Manage a Competitive Internship Program

Recent Posts

Human Resources Today