SeleniumとSikuliXを比較

    「Selenium」と「Sikuli(SikuliX)」の比較

    「Selenium」と「SikuliX」は、Webアプリケーションの自動テストに活用できるツールです。

    ■「Selenium」とは

    Seleniumとは、Webアプリケーションのテスト自動化を実現するブラウザ駆動型テストツール群です。ブラウザ操作からテストスクリプトを作成でき、Webベース管理タスクの自動化も行えます。

    自動テストフレームワークと組み合わせることでテストの自動化を実現でき、複数ブラウザプラットフォームでのテスト実行をサポートし、自動で画面キャプチャを保存できます。

    ■「SikuliX」とは

    Sikuli(SikuliX)とは、画像認識を利用したUI操作自動化ツールです。簡単な操作で「テスト作業自動化」や「RPA」用途として利用できます。

    画像認識を使用してGUIコンポーネントを識別して制御を行い、視覚的なワークフローを自動化できます。

    「検索ボックスに検索ワードを入力して検索ボタンをクリックする」などの操作を自動化できます。

    ■RPA(Robotic Process Automation)としての活用

    Selenium

    Seleniumは、RPAを主目的としたツールではありませんが、小規模RPAツールとしての利用も可能です。

    SikuliX

    SikuliXも、Seleniumと同様に、小規模RPAツールとしての活用も可能です。

    ■テスト遂行自動化の方式

    Selenium

    Seleniumは「オブジェクト方式」であり、スクリプトを作成して実行します。

    SikuliX

    SikuliXは「イメージ認識方式」で、画像認識を使用して、GUIコンポーネントを識別して制御します。

    GUIの内部コードやソースコードにアクセスできないケースにおいて有効に利用できます。

    ■テスト用途比較

    Selenium

    ・UI機能テスト
    ・画面遷移テスト
    ・繰り返しテスト
    ・回帰テスト など

    SikuliX

    ・画面リグレッションテスト
    ・UIテスト
    ・ITシステム管理の自動化
    ・ネットワーク管理の自動化
    ・ゲームプレイングの自動化 など

     

    参考元サイト

    「Selenium」基本情報

    ■概要

    Selenium(セレニウム)とは、Webアプリケーションのテスト自動化を実現するブラウザ駆動型テストツール群です。ブラウザ操作からテストスクリプトを作成でき、Webベース管理タスクの自動化も行えます。

    ■基本説明

    Seleniumは、Webブラウザの自動操作ライブラリで、さまざまな機能を備えています。

    自動テストフレームワークと組み合わせることでテストの自動化を実現でき、複数ブラウザプラットフォームでのテスト実行をサポートし、自動で画面キャプチャを保存できます。

    また、Webベース管理タスクの自動化にも利用できます。

    ■Seleniumの経緯と機能構成

    Seleniumは、初期版から最新版に向けて、機能構成が大きく変更されています。

    Selenium1「Selenium RC(Remote Control)」or「Selenium Core」

    2004年、Selenium1がリリースされました。

    Selenium1は、Selenium2が登場するまで中心的プロダクトでしたが、現在では、Selenium1はメンテナンスモードとなり、積極的なサポートは行われていません。

    Selenium2「Selenium WebDriver」

    2011年、「Selenium Core」と、Google社が開発していた「WebDriver」との統合が図られ、Selenium2としてリリースされました。

    Selenium2は、「Selenium Coreテクノロジー」と「WebDriver API」をサポートし、テスト移植の柔軟性を高め、より固着力のあるオブジェクト指向のAPIなど、優れた機能を提供します。

    後方互換性のためにSelenium1の「Selenium RC」インターフェースをサポートしています。

    Selenium3

    2016年、中核技術の「Selenium Core」を切り離して、「WebDriver」にのみ対応したバージョンがSelenium3としてリリースされました。

    ■オフィシャルサイト情報

    オフィシャルサイト

    →Selenium(Web Browser Automation)

    ライセンス情報

    Seleniumのライセンスは「Apache License 2.0」です。

    詳細について、こちらを参照ください。
    →Selenium →Selenium License

    ダウンロード

    Seleniumは「Windows」「OS X」「Linux」「Solaris」などをサポートしています。

    →Selenium →Downloads

    ■同様製品

    同様な機能を提供する製品として、次のようなものがあります。

    オープンソース製品:「Appium」「Apache Jmeter」「Jenkins」など。


    「SikuliX」基本情報

    ■概要

    SikuliX(シクリ)とは、画像認識を利用したUI操作自動化ツールです。簡単な操作で「テスト作業自動化」や「RPA」用途として利用できます。

    ■基本説明

    SikuliXはPC操作を自動化できるツールです。

    「検索ボックスに検索ワードを入力して検索ボタンをクリックする」などの視覚的な操作をワークフローとして自動化できます。

    画像処理ライブラリ「OpenCV」を利用して、GUIコンポーネント(PCスクリーン上の画像)をオブジェクトとして認識し、オブジェクトに対してクリックや文字入力といった基本操作を実行できます。

    そのため、GUIの内部コード(ソースコード)にアクセスできない場合でも制御できます。

    ■経緯

    「SikuliX」は「Sikuli」をベースとして開発されています。

    当初MITで「Sikuli」として開発されていましたが、その後、2012年から「SikuliX」として開発が継続しています。

    ■ユースケース

    SikuliXは、シンプルに利用できるため、幅広い用途で利用できます。

    ・ソフトウェアテスト---UI動作テスト
    ・RPA用途---アプリケーション操作自動化、Webページにおける繰り返しタスク自動化
    ・ITシステム管理
    ・ネットワーク管理
    ・ゲームプレイング など

    ソフトウェアテスト

    ソフトウェアテストでは、あるワークフローによって動かされるアプリケーションが期待通りに動作するかどうかについてチェックする必要があります。特に複雑なGUIを持つアプリケーションでは、テスト工程に大きな負荷がかかります。

    SikuliXは「スクリプト」もしくは「JavaベースAPI」で制御可能であるため、テストケースに組み込むことで、「テスト効率」と「アプリケーション品質」を向上させるサポートツールとして利用できます。

    ■オフィシャルサイト情報

    オフィシャルサイト

    →SikuliX(RaiMan's SikuliX)

    ライセンス情報

    SikuliXのライセンスは「MIT License」です。

    詳細について、こちらを参照ください。
    →GitHub →RaiMan/SikuliX1 →LICENSE

    動作環境

    SikuliXは64ビットシステムのみをサポートします。

    また、Java実行環境が必要です。Java実行環境が整っている環境であれば「Windows」「Mac」「Linux」などで動作できます。

    Linux/UNIXシステムの場合、セットアップするためのいくつかの前提条件があります。

    →SikuliX →Special setup information for Linux systems

    ダウンロード

    →GitHub →raiman →SikuliX1 Downloads

    ■同様製品

    同様な機能を提供する製品として、次のようなものがあります。

    オープンソース製品:「Selenium」など。