Robotframework

From SME Server
Jump to navigation Jump to search

Robotframework

Page documenting the setup and possible The use of robotframework for regression testing of SMEServer.

Page Initial creation by Brian J Read - 3rd March 2014

Installation

Initial installation is on the back of a Centos 6.5 (64 bit in my case) install. I use Virtual Box under Linux Mint 16.

  1. Install Centos 6.5
  2. login as root
  3. Install robotframework:
yum install make automake gcc gcc-c++ kernel-devel git-core –y
yum install python-devel -y
curl -o /tmp/ezsetup.py https://sources.rhodecode.com/setuptools/raw/bootstrap/ez_setup.py
python /tmp/ezsetup.py
/usr/bin/easy_install pip
rm setuptools-*.tar.gz
pip install -i https://pypi.rhodecode.com/ --upgrade pip
pip install robotframework
pip install virtualenv

Install additional robot framework libraries:

pip install robotframework-selenium2library
pip install robotframework-ftplibrary
pip install robotframework-sshlibrary

Note that selenium needs a browser to drive, so you'll need to install a graphical GUI, you can do this by:

yum -y groupinstall "Desktop" "Desktop Platform" "X Window System" "Fonts"
yum -y groupinstall "Graphical Administration Tools"
yum -y groupinstall "Internet Browser"
yum -y groupinstall "General Purpose Desktop"

If you want to start it up automatically, then instructions are here

else just type:

startx

After command line logging in.

You also ought to create a user to run under - you can use the graphical admin user prgram from the above, and then login as that.

Robotframework Demos

There are ssh, ftp and web (selenium) demos at:

http://robotframework.googlecode.com/hg/doc/userguide/RobotFrameworkUserGuide.html?r=2.8.4#demonstrations

https://bitbucket.org/robotframework/webdemo/wiki/Home#rst-header-starting-demo-application

https://robotframework-sshlibrary.googlecode.com/git-history/2.0/doc/SSHLibrary.html

http://sourceforge.net/projects/rf-ftp-py/files/1.2/FtpLibraryExample.txt/download

Making it test SMEServer

Marco Hess has made good progress with getting the framework to talk to an SMEServer.

His code is here:

https://franka.through-ip.com/git/?p=sme-test-automation.git;a=summary

and I can confirm that it also works on my setup.

Loading and Trying it

If you use this link:

https://franka.through-ip.com/git/?p=sme-test-automation.git;a=tree

and click on the "zip" link, then you will get a zipped archive of all the scripts.

Unzip (extract) this into an empty directory, and then edit the "resource.robot" file to your own server URL and password.

Note that the URL must be same as the FQDN for the server, as it uses this as a test on the title of the logged server manager web page.

CD into the directory and run the complete set of server-manager test with:

pybot 02__server-manager

you can run the ftp test by

pybot 03__remote_access/02__ftp/

and ssh by

pybot 03__remote_access/03__ssh/