Last week has been a firefighting week at work (i.e. debugging and troubleshooting). I’m writing this article to share my experience with debugging a system configuration at work. In the end of article, I have placed some lessons learned points so hopefully someone can learn from it to improve their career.
Selenium WebDriver providesActionBuilder to perform complex user interactions with a web page. It allows chaining multiple actions together to perform a complex action. You can create a complex action and execute the action (perform) it in the following manner. (Ruby) driver.action.key_down(:shift). click(element). click(second_element). key_up(:shift). drag_and_drop(element, third_element). perform The action to open the context menu is context_click() .… Continue reading Opening Right-click Menu / Context menu with Selenium WebDriver
At my current workplace, we use a copy of the backup database which is created by pg_dump to restore in our development machines. Since the database has a lot of audit tables which adds up a lot of space, I needed an easier way to ignore these tables when restoring the database. Apparently pg_restore can generate a… Continue reading How to ignore PostgreSQL tables when restoring a database
Let’s say when you boot up or restart your virtual machine, you want to run the Rails server in the background for your Rails application. It is pretty easy. First, let’s create a function for the script block. Put following code on the top of the Vagrant file. def start_rails_server <<-SHELL cd /vagrant # start… Continue reading Vagrant – Running Rails server in the background
This article is about how you can configure to use the Ruby SDK in your Vagrant image with RubyMine. For this, I have used the joshfng/railsbox Vagrant image because I was using that image for a Rails project. First you have to find where is your Ruby interpreter located for your project. Let’s assume your… Continue reading Setting up Ruby SDK for RubyMine with Vagrant
This is a lesson learned from work. SO we use Rials in our project at the workplace. SP for a new requirement, we had to have a validation for a particular attribute of a model. The requirements were specific on where the validation should happen. Say for example for what controller actions. However, the initial… Continue reading Think differently when the current tests fails
Your test automation code is an important tool to evaluate your application. You must ensure your test code is working/testing as you want it to be. the automated tests give confidence for the developer that the application behaves as expected and things are not broken after they change the code. Recently, at our QA phase, the… Continue reading Be careful when using loops in Jasmine specs
What’s the Go Programming Language? Go is a recent language which sits neatly in the middle of the landscape, providing lots of good features and deliberately omitting many bad ones. It compiles fast, runs fast-ish, includes a runtime and garbage collection, has a simple static type system and dynamic interfaces, and an excellent standard library.… Continue reading Go Programming Language: An Introductory Tutorial
So you might be interested running ansible to configure your local machine. In this article, I’m going to show you the minimum steps that need to install Vim using Ansible on an Ubuntu host machine. 1. Install latest Ansible version from apt $ sudo apt-get install software-properties-common $ sudo apt-add-repository ppa:ansible/ansible $ sudo apt-get update… Continue reading Trying out Ansible on local mode
What is a trailing whitespace? Trailing whitespace is any spaces or tabs after the last non-whitespace character on the line until the newline. Background Few months ago, it was raised that PR submitted code tend to have trailing whitespace changes in code diff along with other “real” code changes. This whitespace change is a diff… Continue reading Trailing whitespaces: what you gonna do about it?