This post is merely some early thoughts on my initial research into client-side testing. Client-side testing is simply a term for automatically testing code within a web-browser.
For my master thesis I’ve been working on a node.js project, more specifically a project that blends express.js as a mature framework, twitter bootstrap for styling and grunt.js for automatic building, reloading and testing of the project. And by testing it’s been solely backend testing using mocha.
I tried doing client-side testing using jasmine-jquery, which is an extension of the Jasmine test framework that includes functionality for dynamically loading html, manipulating them using jquery and checking for results using jquery. After a week of trial and error I was no wiser. So, I let it rest and happily continued coding.
Some weeks after, my programming speed slowed down to almost a halt. My plan for today was to implement a minor feature, but I took a painfully long time to do and as it stands now my code feels more like a deck of cards that I’m now hesitant to touch.
Perhaps you can relate to this experience: you open up your project with the intent of coding a new feature or fixing a bug, and you wonder, “Could the changes I’m about to make have unintended side effects? Will I break my code?”
Oh, yes I can relate to this quote! The quote comes from this article which provides sound arguments for giving client-side testing a second try. So, I’ll give it a second try and I’ll even report back with updates. :)
Here’s a real quick tutorial on how to remap the pause / break key so that it becomes insert instead. Normally this would be a simple fix using sharpkeys. However, since the scancode for pause/break is slightly special we’ll have to tinker a little extra.
This blog post solved nearly all of my worries, and my fix is largelly based on this. Nearing my goal I saw at the very bottom of the blog post that due to an issue with Windows 7, one had to use the final .reg file directly and alter it if one wanted other keys.
“11/17/2011 : I tested with Windows 7 and it works too. Using only Sharp Key would not work because it does not give you the option to select ‘E1_1D’. So you would have to run the registry file that I provided in the article to make this work. Or you can manually edit the registry entry. Thank you.”
Into the registry file we go. After a quick readup on scancodes I saw that delete sends scancode 53 while insert sends scancode 52. So, i opened up the registry file supplied by the aforementioned blogpost and did a simple search and replace for 53 and turned them into 52.
Here’s my adjusted .reg file for switching pause break with insert. This fix apparently affects the num-key as well, but I have no need for that key at this moment.
But strangly, NUM LOCK event is also occuring when I press “Pause”. Since I will not use NUM LOCK KEY at all ( I don’t have number pad anyway), I will add extra mapping entry to convert NUM LOCK event to be converted as “NO EVENT”.
So, you would like to start streaming on say justin.tv or through a similar streaming service? Here’s a short list of resources I used in order to start my “soaring career of livecoding” (pun intended).
You could probably skip this step one, if you just take the streaming key from your profile, enter it directly into FMLE and continue to step two. This was just the order I managed to get everything working on the first try.
Her følger lenker til hjemmesiden for dei ulike programtilleggene (plugins) til WordPress. NB. Den enklaste måten å installere desse tillegga er ved å gå inn Plugins menyen, når du er innlogget WordPress’en din.
I expect you arrived here because you would like to use Python (Jython) to create a web application running on say Tomcat that also utilizes the Jena Semantic Web Framework? Maybe you also would like to add Maven to this mix?
You’ve come to the right place then!
This is not an in-depth tutorial. I will only point to good sources, talk about my experiences And assure you that such a Maven/Jython/Jena/Tomcat webapp can be done!
Resources (in the order I expect you would need them):
Install Git for Windows. The tutorial mentioned above will ask you to perform certain commands inside the project you’re creating. If you’re on Windows that might be a hazzle to navigate to the relevant folder with the cmd. Having installed Git you can instead right click the folder and select “Git Bash here” to fire up a command-line window that’s navigated to be exactly where you need to be before typing in the Maven commands.
You could also use the Play Web Framework (excellent video introduction there), which is Java-based and supports rapid development. In our semantic web project we wanted to find an easy way to create a web application that uses the Jena Toolset. Frameworks like the Spring Web Framework seemed much to heavy for our purposes, so we we’re attracted to the idea of creating a Jython/Jena combo. After a lot of researching/googling/headscratching I made it work. (And felt quite proud for doing so.) Naturally, it didn’t take long before someone introduced me to the Play Web Framework. It seems awesome, and we might go with that instead. Nevertheless, there might be instances where you would like to use Jena in a pythonic way on a web server.