Reading Time: 6 mins

Winium – Een stapsgewijze handleiding

Winium – Een stapsgewijze handleiding

In de huidige technologische trend wordt elke softwaretoepassing die we gebruiken beschikbaar gesteld als een webtoepassing of als mobiele app. Maar er zijn nog steeds veel desktop-applicaties in gebruik in grote ondernemingen. Om deze op Windows gebaseerde applicaties te testen, vertrouwen we nog steeds grotendeels op commerciële tools zoals TestComplete, HP Unified Functional Tester, Coded UI, enz. Met de opkomst van open source testtools hebben we tools als AutoIT en Sikuli zien opkomen.

In dit artikel willen we het hebben over een minder bekende open source-testtool voor Windows-automatisering – Winium

Winium is een automatiseringsraamwerk voor Windows-platform. Het is een gratis en open source tool op basis van Selenium.

Selenium, de veelgebruikte open source tool voor de webapplicatie , biedt ondersteuning voor mobiele applicaties die Appium gebruiken. Eerder hadden we voor Window Application-automatisering enkele externe tools gebruikt, zoals Sikuli, AutoIT enz. Nu hebben we Winium bij de Selenium-tas.

Door Winium ondersteunde platforms:

  • Windows Desktop-apps (WPF, WinForms),
  • Windows Store of Universal Apps voor Windows Phone,
  • Windows Phone Silverlight-apps

Door Winium ondersteunde talen:

  • Java
  • Doelstelling C
  • JavaScript met Node.js
  • PHP
  • Python
  • Robijn
  • C#
  • Clojure of Perl met de Selenium WebDriver API

Winium-testraamwerk:

  • JUnit
  • TestNG
  • PyUnit
  • Nun

Werken met Winium is vrij eenvoudig en gemakkelijk als je al ervaring hebt met Selenium . In Selenium gebruiken we voor de webtoepassing FireBug of FirePath om de elementzoekers te identificeren. Evenzo kunnen we in Winium UISpy.exe of Inspect.exe (standaard beschikbaar in Windows) om de elementzoekers in de Windows-toepassing te identificeren.

Vereisten om met Winium te werken:

  • Microsoft. NET framework
  • Download de nieuwste eclips
  • Maven-project maken
  • UISpy downloaden

Ontwikkeling van softwaretoepassingen

Stappen om te doen:

Stap 1: Voeg onderstaande afhankelijkheid toe in pom.xml

com.github.2gis.winium

winium-webdriver

0.1.0-1

U kunt de afhankelijkheid ook downloaden via onderstaande link:

https://mvnrepository.com/artifact/com.github.2gis.winium/winium-webdriver

Stap 2 : Download Winium.Desktop.Driver.exe.

https://github.com/2gis/Winium.Desktop/releases

Stap 3 : Eenmaal gedownload, start u het stuurprogramma, het wordt standaard geopend met poort 9999 die als server fungeert.

Intern communiceert deze server via JSON Wireless Protocol

Stap 4 : Voeg TestNG-afhankelijkheid toe om een applicatie uit te voeren

org.testng

testen

6.14.3

test

Stap 5: Maak een voorbeeld van een Java-project en een klasse en gebruik de onderstaande code om de rekenmachine te automatiseren

pakket com.winium.demo;

import java.net.MalformedURLE Exception;

java.net.URL importeren;

import org.openqa.selenium.By;

import org.openqa.selenium.winium.DesktopOptions;

import org.openqa.selenium.winium.WiniumDriver;

openbare klasse Calculator {

public static void main(String[] args) gooit MalformedURLException, InterruptedException {

DesktopOptions-optie = nieuwe DesktopOptions();

option.setApplicationPath(“C:\Windows\System32\calc.exe”);

WiniumDriver-stuurprogramma = nieuwe WiniumDriver (nieuwe URL (“http://localhost:9999”), optie);

Draad.slaap (5000);

driver.findElement(By.name(“One”)).klik();

driver.findElement(By.name(“Plus”)).klik();

driver.findElement(By.name(“Twee”)).klik();

driver.findElement(By.name(“Is gelijk aan”)).klik();

String output = diver.findElement(By.id(“RekenmachineResultaten”)).getAttribute(“Naam”);

System.out.println(“Resultaat na toevoeging is: “+output);

bestuurder.stop();

}}

Winium lijkt veelbelovend te zijn voor de automatisering van Windows-applicaties. Ook al is het nog in de kinderschoenen als de applicatietest verschillende platformen ondersteunt, zoals web, mobiel (ios, android, windows), windows desktop, dan zal Selenium + Appium + Winium een winnende combinatie zijn.

Wat denk je?

Keerthi Veerappan

An INFJ personality wielding brevity in speech and writing. Marketer @ Zucisystems.