Code Monkey home page Code Monkey logo

robotframework-whitelibrary's Introduction

Deprecation notice

Please note that the underlying White framework has been deprecated (Dec 2019). That means we will stop developing this wrapper library and encourage users to migrate to other tools. Please check White automation framework project page for suggestions.

Introduction

WhiteLibrary provides the means to automate Windows GUI technologies with Robot Framework. WhiteLibrary wraps the White automation framework.

Supported technologies include:

  • Win32
  • WinForms
  • WPF (Windows Presentation Foundation)
  • SWT (Java) platforms

Version Build Status

Installation

Stable version

Installing the latest stable release:

pip install --upgrade robotframework-whitelibrary

Release notes

Development version

Installing the version containing the latest updates in master:

pip install --upgrade --pre robotframework-whitelibrary

Documentation

GUI inspection

Item locators can be found using a GUI inspection tool, for example Inspect.exe or UIAVerify that are included in Windows SDK.

Windows 10 SDK: https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk

Select at least the following features in the installer:

  • Windows SDK Signing Tools for Desktop Apps
  • Windows SDK for UWP Managed Apps

Windows 7 SDK: https://www.microsoft.com/en-us/download/details.aspx?id=8279

Support

Development environment

This section contains instructions for developing WhiteLibrary.

Prerequisities

  • Install NuGet Command Line Interface (CLI) to install required DLL packages (TestStack.White and Castle.Core).
  • Install Python, if not already installed. Versions 2.7, 3.5 and 3.6 are supported at the moment.
  • To install Robot Framework and Python for .NET, run
pip install robotframework pythonnet

or alternatively you could use the provided requirements files (requirements.txt or requirements-dev.txt):

pip install -r requirements-dev.txt
  • To make modifications to and build the test application (UIAutomationTest.exe), install Visual Studio. The test application is a WPF application developed with C#.
  • If you want to edit Python with Visual Studio, Python Tools are required. They're part of Visual Studio 2017 installer, see details about what to select during installation: https://github.com/Microsoft/PTVS

WhiteLibrary installation

  • To install WhiteLibrary from source, in the root folder of the project run
local_install.cmd

Building the test application

Open UIAutomationTest\UIAutomationTest.sln in Visual Studio and build the solution in Visual Studio. This will create the executable used in the Robot test suite, UIAutomationTest\bin\Debug\UIAutomationTest.exe.

Running tests with Robot Framework

  • To execute the test suite against SUT, in the root folder of the project run
robot --outputdir output --exclude no_ci --loglevel DEBUG:INFO atests
  • To execute a single test case called "Example Test Case", run
robot --outputdir output --exclude no_ci --loglevel DEBUG:INFO -t "Example Test Case" atests
  • The test suite tagged with no_ci will run tests against the old (Win32) version of Windows calculator, and is typically excluded from test runs.

Running Static Analysis

Project relies on flake8 and pylint for static analysis. In order to run those locally, one has to install them (automatically installed if dependencies are installed via requirements-dev.txt):

pip install flake8 pylint

to run either one, go into to root of the project run execute analyzer, like this:

flake8
pylint src/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.