Linux Blog

Office 2007 docx to ODF Conversion

Filed under: Linux Software — TheLinuxBlog.com at 10:38 pm on Monday, September 29, 2008

I was going to write an article on how to open docx’s and other Office 2007 documents but there are numerous articles out there explaining how to do this on many distributions. They all basically say the same thing, you download the file, extract it and put it in your open office directory. Normally there are a couple of files but the on we are interested in is the main binary. What some people don’t know is that if you want to just quickly open or convert a document you can do so by using the odfconverter binary. (Read on …)

Facts About Selenium

Filed under: General Linux,Linux Software — TheLinuxBlog.com at 9:22 pm on Friday, March 28, 2008

Selenium is a chemical element. What you may not know is that Selenium is also a powerful testing tool for web applications. Selenium runs its tests directly in a browser, just like real users do. It is cross platform and the developers plan to have it for the iPhone but thats another story. Selenium can run in one of two modes Core and Remote Control (RC). The RC method has a way of using distributed computing much like the way Samba allows cross compiling over multiple cpu’s. There is an IDE for Selenium that can be used to easily learn Selenium.

Enough Facts About Selenium already!

What exactly can you do with Selenium?

Well, the answer is simple. Pretty much anything that you can do with a browser Selenium can do. Its primary purpose is for developers to use as a quality assurance tool. For QA purposes you can create a test cases, run them and verify that the end result is what you expected. You can create test cases in Java, Ruby, Python, Perl, PHP or .NET.

I had a little trouble getting the Selenium driver for PHP installed so here is the how to:

sudo su
pear channel-update pear.php.net
pear install Testing_Selenium-beta
pear install PHPUnit
exit

The above allowed me to communicate with the Selenium Remote Control that I downloaded with PHP. Here is an example from their website that I have modified so that it works:

  <?php
 
set_include_path(get_include_path() . PATH_SEPARATOR . './PEAR/');
require_once 'Testing/Selenium.php';
require_once 'PHPUnit/TestCase.php';
 
class GoogleTest
{
private $selenium;
 
public function setUp()
{
$this->selenium = new Testing_Selenium("*firefox", "http://www.google.com");
$this->selenium->start();
}
 
public function tearDown()
{
$this->selenium->stop();
}
 
public function testGoogle()
{
$this->selenium->open("/");
$this->selenium->type("q", "hello world");
$this->selenium->click("btnG");
$this->selenium->waitForPageToLoad(10000);
$this->testCase("/Google Search/", $this->selenium->getTitle());
echo "<hr>";
$this->testCase("/Yeahh Search/", $this->selenium->getTitle());
 
}
 
public function testCase($regEx, $string) {
 
preg_match($regEx, $string, $matches);
 
print_r($matches);
 
}
 
}
 
$google = new GoogleTest();
 
$google->setUp();
$google->testGoogle();
$google->tearDown();
?>

Before attempting to run this you must make sure that you downloaded Selenium RC and that it is running. Selenium runs on Java so make sure that Java is installed download selenium from here, unzip and run the following in the directory that it is extracted to:

cd selenium-remote-control-1.0-beta-1
cd selenium-server-1.0-beta-1
java -jar selenium-server.jar -interactive

Once this is running you can start scripting with PHP to get Selenium to do anything that you want. Once you are done make sure that you exit the Selenium server by running the “exit” at the prompt.

I’m sorry about the format of this post, its been a while since I have used Selenium and I’m quite excited about it. If you have any questions about Selenium post them here and I will try to answer them for you.