Post originally published on http://www.rubypigeon.com. Republished with author’s permission. What Are Side Effects? Side effects are any observable change caused by calling a function. For a function to be free of side effects, it must do nothing other than provide a return value. These are examples of side effects: Writing to a file, Printing output […]
How to Reduce Controller Bloat with Interactors in Ruby
Introduction Let’s consider a hypothetical situation — You’ve been working on a Rails application for about a year. When the application was new and its functionality limited, you could add features relatively simply by spinning up a new controller, model and view or — worst case — add a few lines to an existing controller, […]
How to Test React and MobX with Jest
Introduction If you’re developing React applications, then you know that the React community has been bursting with new ideas and tools over the last year. When investigating any new technology to incorporate into a stack, we should consider if it either makes the workflow much easier, or solves a key problem. MobX and Enzyme are […]
Setting Up Angular 2 with Webpack
Introduction In this article, we’ll be looking at the setup required to create an Angular 2 project with unit tests. We’ll cover various required technologies and how to write each of their configurations. Let’s dive in. Prerequisites and Assumptions Before getting started, we should make sure that we have everything we need. It is assumed […]
Platform Update on August 23rd
The upcoming platform update is scheduled for August 23rd, 2016. ChromeDriver gets an update with version 2.23.Git has been updated to version 2.9.3.
An Approach to Testing Your User Interface More Efficiently
Post originally published on http://www.ontestautomation.com. Republished with author’s permission. I am pretty skeptical about writing automated tests that interact with the application under test at the user interface level. These UI tests tend to be: Slow in execution, since they are typically end-to-end tests from an application-layer perspective, and Demanding when it comes to maintenance, […]
How to Test Rails Models with Minitest
Introduction In this tutorial, we will cover how to test Ruby on Rails models with the Minitest testing suite. After completing this tutorial, you will have learned the following: What to test in Rails models, How to test the various aspects of a Rails model, such as validations, associations, scopes, and extra business logic methods, […]
Getting Started with Protractor and Cucumber
Introduction If you develop AngularJS applications, then you have probably heard of Protractor. It is an end-to-end testing framework built specifically for AngularJS. It allows you to create tests that interact with a browser like a real user would. One of the greatest features of Protractor is its ability to “be smart” about waiting for […]
Mocking External HTTP Requests in Node Tests with Nock
Introduction Testing code that depends on external services and APIs, e.g. the GitHub API, has a variety of challenges. Writing tests that make real HTTP requests to these services may be error-prone due to issues such as network connectivity, API changes, rate limiting and so on. Nock allows us to avoid these challenges by intercepting […]
Platform Update on July 26th
The upcoming platform update is scheduled for July 26th, 2016. Bundler gets an update with version 1.12.5. Cassandra is updated to version 2.2.7.
Dockerizing Elixir and Phoenix Applications
Introduction Phoenix lends itself to rapid and productive workflows when building Elixir web services, and the Mix tool provides extensible automation of repeated tasks such as compiling code and running tests. However, containerization can be helpful when we want to build and run a release along with its supporting infrastructure. In this tutorial, we’ll learn […]
Continuous Deployment with Docker, AWS, and Ansible
Introduction You’ve built some Docker images and made something locally. Now it’s time to go to production — and you’re stuck. This is not uncommon. There are quite a few articles out there about using Docker in a development environment. However, running Docker in production could still use a detailed explanation. This tutorial will take […]
Continuous Delivery of Docker Images with Quay and Semaphore
Running code in different environments can often produce unexpected behavior. Development and testing environments strive to replicate production envrionments as closely as possible, but there’s still much to be desired. This is where containers come in. When using Docker-based deployments, environments for development, staging and production are virtually the same, and they can be rapidly […]
A TDD Approach to Building a Todo API Using Node.js and MongoDB
Note that this tutorial is no longer considered valid as it does not match our quality standards. Introduction Testing is an integral part of the software development process which helps improve the quality of the software. There are many types of testing involved like manual testing, integration testing, functional testing, load testing, unit testing, and […]
Testing REST Endpoints Using REST Assured
Introduction Having a large collection of unit tests that verify the behaviour of Java classes is only the first step to a sound testing strategy. After all, the fact that individual Java classes work successfully in isolation does not mean that the application itself will also work correctly ,when all these classes are bundled together. […]