Sunteți pe pagina 1din 6

Software de testare: Selenium IDE, Selenium RC, NUnit

Web: http://seleniumhq.org, http://www.nunit.org

1. Selenium IDE
Selenium IDE se instaleaz ca i add-on al Firefox-ului i permite nregistrarea i
rularea de teste aferente paginilor web.
Caracteristici principale:

Interfa uor de utilizat


nregistrarea automat a pailor urmai de ctre utilizator
Selectarea cmpurilor unei pagini web pe baza id-ului sau numelui
Posibilitate de depanare i adugare de breakpoint-uri
Salvarea testelor ca i HTML, PHP, C#,...
Adugarea de scripturi n selenez sau alte limbaje cunoscute

Un exemplu, de nregistrare a comenzilor utilizatorului, folosind Selenium IDE este


prezentat n continuare.
Pas 1. Apsarea butonului rou de nregistrare, din partea dreapta sus a ecranului,
Pas 2. Tastarea linkului www.google.com n browser,
Pas 3. Tastarea textului upt n csua de cutare,
Pas 4. Apsarea butonului de cutare,
Pas 5. Apsarea primului link, din lista link-urilor rezulate, www.upt.ro,
Pas 6. Selectarea textului Universitatea Politehnica din Timisoara, buton dreapta,
comand verifyTextPresent.
Comenzile nregistrate de ctre Selenium IDE sunt prezentate n Figura 1, iar codul
HTML rezultat este urmtorul:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="" />
<title>New Test</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">New Test</td></tr>
</thead><tbody>
<tr>
<td>open</td>
<td>/</td>
<td></td>
</tr>
<tr>

<td>type</td>
<td>q</td>
<td>upt</td>
</tr>
<tr>
<td>clickAndWait</td>
<td>btnG</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>//ol[@id='rso']/li[1]/h3/a/em</td>
<td></td>
</tr>
<tr>
<td>verifyTextPresent</td>
<td>Universitatea &quot;Politehnica&quot; din Timisoara</td>
<td></td>
</tr>
</tbody></table>
</body>
</html>

Figura 1 Comenzi Selenium IDE


Codul HTML rezultat poate fi exportat n diferite limbaje de programare utiliznd
opiunile din meniul Options->Format, dup cum arat Figura 2:

Figura 2. Limbaje de scripting


Prin selectarea limbajului C#, se obine urmtorul cod, identic ca i coninul cu codul HTML.
Acest cod poate fi deschis ulterior n Visual Studio, adugnd sau modificnd linii de cod
n acest fel C# devine un limbaj de realizarea a scripturilor pentru Selenium:
using
using
using
using
using
using

System;
System.Text;
System.Text.RegularExpressions;
System.Threading;
NUnit.Framework;
Selenium;

namespace SeleniumTests
{
[TestFixture]
public class Untitled
{
private ISelenium selenium;
private StringBuilder verificationErrors;
[SetUp]
public void SetupTest()
{
selenium = new DefaultSelenium("localhost", 4444,
"*chrome", "http://change-this-to-the-site-you-are-testing/");
selenium.Start();
verificationErrors = new StringBuilder();
}
[TearDown]
public void TeardownTest()
{
try
{
selenium.Stop();
}
catch (Exception)
{
// Ignore errors if unable to close the browser
}
Assert.AreEqual("", verificationErrors.ToString());
}

[Test]
public void TheUntitledTest()
{
selenium.Open("/");
selenium.Type("q", "upt");
selenium.Click("btnG");
selenium.WaitForPageToLoad("30000");
selenium.Click("//ol[@id='rso']/li[1]/h3/a/em");
try
{
Assert.IsTrue(selenium.IsTextPresent("Universitatea
\"Politehnica\" din Timisoara"));
}
catch (AssertionException e)
{
verificationErrors.Append(e.Message);
}
}
}
}

2. Comenzi Selenium
Aciunile utilizatorului ntr-o pagin web, sunt transpuse de ctre Selenium IDE n
comenzi. De asemenea, exist comenzi suplimentare cu ajutorul crora se realizeaz anumite
teste de verificare asuprea coninutului paginii respective. Verificarea este de dou feluri: cu
ntreruperea testului sau cu continuarea acestuia. Comenzile de tip assert fac parte din prima
categorie, iar cele de tip verify fac parte din cea de-a doua.
Exemple:
<tr>
<td>assertTitle</td>
<td>Selenese Selenium Commands Selenium Documentation</td>
<td></td>
</tr>
<tr>
<td>assertTextPresent</td>
<td>Selenese </td>
<td></td>
</tr>
<tr>
<td>assertElementPresent</td>
<td>//div[@id='selenese-selenium-commands']/h1</td>
<td></td>
</tr>
<tr>
<td>verifyElementPresent</td>
<td>//div[@id='verifying-page-elements']/p[1]/em</td>
<td></td>
</tr>
<tr>
<td>verifyTitle</td>

<td>Selenese Selenium Commands Selenium Documentation</td>


<td></td>
</tr>

3. Selenium RC (Remote Control)


Selenium RC este o completare a add-on-ului Selenium IDE, oferind posibilitatea
automatizrii testelor i rularea scripturilor aferente, n diferite limbaje de programare.
Arhitectura Selenium RC este prezentat n Figura 3.

Figura 3. Arhitectura Selenium RC


Dup instalare, lansarea n execuie se realizeaz cu ajutorul comenzii:
java -jar selenium-server.jar,

necesitnd o instalare prealabil a unei versiuni de java ncepnd cu 1.5.


4. Utilizarea clientului Visual Studio .NET
Pas 1.
Pas 2.
Pas 3.

Instalarea framework-ului Nunit 2.5


Deschiderea editorului Visual Studio (sau a altui editor) i crearea unui proiect
de tip Class Library
Adugarea referinelor ctre urmtoarele biblioteci: nmock.dll, nunit.core.dll,
nunit.framework.dll,ThoughtWorks.Selenium.Core.dll,ThoughtWorks.Selenium.
IntegrationTests.dll and ThoughtWorks.Selenium.UnitTests.dll. Aceste
biblioteci se gsesc n directorul de instalare al aplicaiei Selenium RC, n
subdirectorul selenium-dotnet-client-driver

Pas 4.
Pas 5.
Pas 6.
Pas 7.

Exportarea n format C# a testelor din Selenium IDE sau crearea manual a


acestora. Dac se folosete opiune de export, atunci codul surs produs de
ctre Selenium IDE se suprascrie peste clasa creat n proiectul de la pasul 2.
Compilarea proiectului
Deschiderea framework-ului NUnit i deschiderea fiierului .dll reuzultat n
urma compilrii de la pasul anterior
Rularea testului

5. TODO
Crearea mai multor suite de test, utiliznd scripturi C# pentru testarea aplicaiei web de la
adresa: http://193.226.11.250.

S-ar putea să vă placă și