Internet from solaris …

DNS makes our life real easy. Without that, i don’t think people will say check out http://google.com but check out http://64.233.187.99. I realized how important DNS is to us and without DNS how one can go mad.

I installed Solaris (Neveda ) two weeks back and it was good. :-) . Though i was a bit scared in the initial stages, i didn’t find much difference between Linux and Solaris as far as LDTP is concerned. Anyway i had Emily Chen from Sun China (my Soc Mentor ) to help me with the issues and many thanks to her, she was always willing to help me in any issue. In fact almost all her mails had something saying
” I am on Gtalk almost every workday, feel free to ping me when you have problems. ” or something similar to that :-) :-)

But there was one issue which really troubled me in Solaris and that was DNS wasn’t working. Instead of typing http://www.google.com, i had to type http://64.233.187.99/ :(

I had a huge list of servers which i might use and their ip’s . (Many thanks to dnsstuff.com). I was getting more and more frust typing IP’s instead of url’s and browsing only the cached page instead of the actual pages. I tried many a things and even Emily also helped me with few tips and tricks. But things never worked. I was really getting irritated as this was delaying my progress in SOC.

Determined to solve the issue somehow, i started trying all the options in the Network Settings. One strange thing i noted is that, whenever i add a DNS server and close it, next time i open Network Settings, the entries won’t be there. Simply disappeared from there :-(.

I noticed an option called Location in the Network Settings. It was empty and i wasn’t sure whether i have seen anything like this in Linux.


Not sure of what to do with that Location, i gave “home” there. I wasn’t sure whether this will solve my problem, but no harm in trying. But once i restarted network, www.google.com worked.
YES. IT WORKED. IT WORKED .IT WORKED. IT WORKED .IT WORKED. IT WORKED

I am pretty sure anyone who had seen me at that time would have thought that i am mad. Even i wont blame them . I accept, suddenly jumping out of the chair and shouting “IT WORKED” at 3 in the morning is quite odd. :P

Anyways, now that things have started working, will be saying my “Hello World” to tinderbox soon :-)

Running a test case …

Having written the test scripts for Firefox, this time going to tell how to test Firefox with these scripts. The test scripts can be found here

There is a wiki page in LDTP website which gives quick tips about how to run LDTP test cases.

First quick steps to get LDTP installed . If you have LDTP already installed, then you can skip this.

Installation
Get the source/binary from the downloads section of LDTP web page. Any other dependencies which LDTP might need while installation is libxml2 and libat-spi. (I generally install the debug and dev packages of the above two). After this installation of LDTP shouldn’t have any issues :-)

Runner XML
Runner XML files makes testing many test cases one after another in a batch mode easy. A sample runner XML can be found here. A very simple runner XML needed to run a single test case will be like

<ldtp>
<logfileoverwrite>1</logfileoverwrite>
<logfile>log.xml</logfile>
<group>
<script>
<name>verifyaddress-autocomplete.py</name>
<data>firefox.xml</data>
</script>
</group>
</ldtp>

The tags are self explanatory.
You can have any number of script blocks and thereby test any number of test cases one after another. The data tag is not necessary but it is better to have a separate data file.

Test
Well, that’s all you have to do. Start Firefox and then

hari@home:~$ ldtprunner run.xml

The above command starts testing the application with the test case provided in the run.xml .

Note :: It is also possible to test simply by giving

hari@home:~$ python verifyaddress-autocomplete.py

But i prefer doing it using runner XML, as that has more features.

There is a complete tutorial for LDTP here. This explains everything needed to write a test script clearly and is worth reading :)