Saturday, 15 October 2011

Android validation (decompilation) tools

So Jenkins is building and archiving lovely APKs with timestamps in versionName!  People are testing directly out of DropBox.  Got a bug report but need to see which APK it came from!
Goal: Extract human-readable versionName from APK.
Two-liner answer after the break!

Friday, 12 August 2011

Eclipse Mylyn / Bugzilla "resolution required" UX buglet

Eclipse Mylyn / Bugzilla error...
Submit failed: resolution required:  A valid resolution is required to mark bugs as RESOLVED.
... requires specific steps to avoid.  TL;DR solution and notes after the break.

Monday, 8 August 2011

Using a Linux android emulator server

Situation: You have a fast lots-of-memory Linux desktop box (perhaps remote) to run your Android emulators on and a desktop machine running your IDE.  How best to debug remotely?
SSH port-forwarding instructions for Windows (and others) after the break.

Monday, 13 June 2011

Eclipse eUML2 plugin installation problem and solution

Got red herring errors below when trying to install Soyatec's excellent UML Eclipse plugin eUML2.  Found real answer in the Soyatec forums here -- install GMF (Graphical Modelling Framework) first.
Worked a treat. Errors after the break.

Saturday, 23 April 2011

Bug: SoapUI fails to add REST Test Method to Test Case when using Resource solely to share parameters

[Duplicated from my EviWare/SoapUI forum post here.]

Using SoapUI 3.6.1, I ran into same problem as listed here viewtopic.php?f=2&t=4462&start=15 (which I named this topic after).
I downloaded the 3.6.2 nightly and retried. No fix.
OOI, by opening the project XML in Eclipse, I can see that despite throwing the same error, if I save, the new testStep does appear in the XML. I've tried "Resolve" (no errors), loading and reloading, restarting SoapUI. No help.
Below are more details of the problem some more and a workaround ...

SoapUI aide memoire and groovy scripting (on RTM)

A braindump (not a tutorial) on SoapUI including use of Groovy to script parameter generation!
To whet pre-jump appetites, the SoapUI primary structure:
  • Project - houses...
    • Methods - Create these including parameters that need populating later (I'm doing REST atm)
    • TestSuite - One can only script within a test suite/case so we'll need one
      • TestCases -  one for each separable chunks of work.
        Lots of choices but I've mostly used...
        • GroovyScript - code to generate values (like hashes)
        • PropertyTranfer - Used to copy values between scripts and calls' parameters (REST calls, etc)
        • Test Request (REST/SOAP/HTTP/JDBC/AMF!) to make actual calls
    • Setup Script and TearDown Script can be placed on TestSuite, TestCase, etc to also house the scripting.  (but I've generally found scripts more handy.)
    • Project-wide utility methods can only be defined with a SoapUI Pro license (IIUC).  Without this, I've ended-up with some copy-and-paste re-use :-(  Shame there's no sliding scale from Community to Pro!
Full details after the break and please note this post's a WIP -- perhaps forever!  ('90s webpage, anyone? ;-) )

Thursday, 21 April 2011

Tacking to pick up the Droid trade wind

Well, wow a lot's happened since that last post.  My Father died (yep, "To lose one parent, Mr. Worthing, may be regarded as a misfortune. To lose both looks like carelessness."), decided to re-evaluate life and left Malden Labs.  I had a great time there; learned, saw and did lots; met a tonne of interesting people and wouldn't have missed it for anything.  However, I always fancied being master and commander of my own boat so am taking The Good Ship UGS (my half-comically, half-seriously named company) to sea.  Initially with some Android app and game writing but we'll see which way the wind blows.  Android appeals since I've been Java programming since '96 and the current current at last seems strong enough to carry us to promised lands (and/or cities of gold).  To top it off, as an ideas person, I'm slightly sickened by the slew of recent business successes that are depressingly (or reassuringly) similar to previous ideas.  (I'm sure this isn't unusual but that doesn't make it less sickening ;-) )

So starting simple and trying to focus on failing fast with delicious early feedback, first projects will be a 2D casual game using AndEngine and a personal-itch scratching Android RememberTheMilk Sharer utility (surely it's not that hard to catch the SEND intent, offer to store to RTM with some processing to tidy-up common content.)

Never fear, our regular yak programming will continue (even more so now since I won't be posting on internal blogs and wikis!) but maybe there'll even be some non-yak content!  Ok, time for a calming lie down ;-)

Sunday, 30 January 2011

update-alternatives and the Chrome takeover quash

Finally got round to understanding Ubuntu's /etc/alternatives a little more after installing Chrome made it my default browser!?  More details after the jump (another first!) but briefly:
  • List all alternative-able things:
    sudo update-alternatives --get-selections
  • Choose which browser:
    (these present menu to select from)
    sudo update-alternatives --config x-www-browser
    sudo update-alternatives --config gnome-www-browser