Posts

Showing posts from January, 2015

Copy Maven dependencies to lib folder

Image
Problem: How can I copy all maven dependencies to a target folder say lib sometimes all you want is to copy all dependencies (jars) to a destination-folder. TheMaven Dependency Plug-In will kindly assist you to copy maven dependencies to a target folder.
Include the following plugin in your pom file:
org.apache.maven.pluginsmaven-dependency-plugincopy-dependenciespackagecopy-dependencies${project.build.directory}/alternateLocationfalsefalsetrue


From command prompt run : mvn dependency:copy-dependencies
You will now have a target folder with all your jars!

"GC overhead limit exceeded" Eclipse

Image
"GC overhead limit exceeded" is what you see when you are trying to import a new project or when Eclipse just runs out of memory!




Solution:
Allocate more memory to your Eclipse instance. How?: Locate the eclipse.ini file in your Eclipse's installation directory. The content would be something similar to the following:
Change these:

Restart your eclipse :)

Learn Protractor / Quick Protractor demo

Image
If you are well versed with selenium then before going through the demo have a look at these slides:
http://ramonvictor.github.io/protractor/slides/#/

Now straight to the demo:
Prerequisites:
Download and install NodejGo to the NodeJS home pageClick install to download the .msi installer packageRun it and follow the instrucitons, you now have NPM (node package manager) and Node.js installedOpen the Node.js command prompt and type in the following command to install protractor globally.npm install –g protractor If you get the error enoent read this:
http://go-gaga-over-testing.blogspot.com.au/2014/09/node-grunt-error-enoent-stat-roaming-npm.html?_sm_au_=iHV1HtWvt61rRqWs

You are now ready for a Proof of Concept:

Demo test application and protractor tests.
Setup     
git clone https://github.com/juliemr/protractor-demo.git  cd protractor-demo  npm install

To run

Get a selenium server running at localhost:4444.  java - jar "Path to the selenium jar" Make sure the chrome driver's p…

Open JavaScript Editor for Eclipse

Image
If you are working on Eclipse (Kepler/Juno/or anyother version) and you want to use JavaScript editors , there are very few good options:


Solution 1: (Recommended for Juno users)

Open Eclipse -> Go to "Help" -> "Install New Software"Select the repository for your version of Eclipse. I have Juno so I selected http://download.eclipse.org/releases/junoExpand "Programming Languages" -> Check the box next to "JavaScript Development Tools"Click "Next" -> "Next" -> Accept the Terms of the License Agreement -> "Finish"Wait for the software to install, then restart Eclipse (by clicking "Yes" button at pop up window)Once Eclipse has restarted, open "Window" -> "Preferences" -> Expand "General" and "Editors" -> Click "File Associations" -> Add ".js" to the "File types:" list, if it is not already thereIn the same "…

When I found the "Spotify engineering culture"

Image
A good friend of mine introduced me to this mantra "Spotify culture". I had no clue it existed and went about reading and watching their videos. I must say I was impressed with their way of customizing agile to form these - squads, Tribes, Guilds., Release trains and feature toggles! If you want to know what these buzz words are, Watch the videos here:
https://labs.spotify.com/2014/03/27/spotify-engineering-culture-part-1/
https://labs.spotify.com/2014/09/20/spotify-engineering-culture-part-2/
Happy Spotifying the culture!

If you are not doing automated testing, you are NOT ready for continuous delivery

Image
CI as we know is closely knit to Continuous Delivery! Continuous Integration (CI) is a development practice that requires developers to integrate code into a shared repository several times a day. Each check-in is then verified by an automated build, allowing teams to detect problems early.

It is actually a series of practices that make you ready for continuous delivery. What you need is a quick way of seeing what happened after your new code is deployed. 

You need the following: Staging environment (clone of prod) before the code hits production release.Automated tests that kick off as soon as the code is committedSome form of Iterative development - Agile A single source repositoryEvery commit built on an integration machine Fast build 

Visualizations of Continuous Delivery
Nhan Ngo, a QA engineer at Spotify, made four fabulous visualizations while reading Continuous Delivery. She has very kindly agreed to make them available under a Creative Commons license so feel free to share them…