支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡


概要

ここではRanorex Studioについて説明させていただきます。
Ranorex Studioは、デスクトップ、Web、およびモバイルアプリケーションをテストするためのテスト自動化ツールです。信頼性の高いキャプチャアンドリプレイツール、ドラッグアンドドロップUIオブジェクト、およびキーワード駆動型テスト用のコードモジュールのおかげで、初心者でも簡単に使用できる点が大きな特徴です。また、高機能のテストツールとして、専門家にとっても強力なツールとして機能します。

Ranorex Studioはコストを管理しながら、テストからより迅速にフィードバックを取得することが可能です。 それだけでなく、Ranorex Studioを使用することでテスト自動化への効率的な促進が実施できます。
Ranorex Studioは単一のパッケージで、強力な機械学習済みオブジェクト認識エンジンと、デスクトップ、Web、 およびモバイルアプリ用の使いやすい自動化ツールの完全なセットを取得します。
さらにRanorex Studioは、Jenkins、Jira、TestRail、およびその他の主要なDevOpsツールと統合して、バグ追跡を自動化し、リリースサイクルを加速します。 以上がRanorex Studioの概要となります。
さらに詳しくRanorex Studioについて解説させていただきます。

市場からの評価

Ranorex Studioの市場からの評価について紹介させていただきます。
満足しているユーザーからのレビューにより、Ranorex Studioはテスト自動化ソフトウェアのG2 Gridで毎年リーダーに選ばれています。 テスト自動化ソフトウェアであるG2 Gridは、市場でのプレゼンスと顧客満足度に基づいて主要なソリューションを特定します。また、これらを決定するために従業員数、Web およびソーシャルプレゼンス、成長など、ベンダーと製品に関する15の指標の組み合わせを使用することで知られております。 顧客満足度の評価は、実際の検証済みのユーザーによって送信されたレビューの分析に基づいているため、客観的な評価として市場からの評価を分析することができます。これによってRanorex StudioがG2 Gridのリーダーとしての地位を維持するだけでなく、ROI、使いやすさ、実装のしやすさなどの分野でもトップマークを獲得していることの証明と言えるでしょう。
以上が市場からの評価に関する説明とさせていただきます。

Ranorex StudioとDevOps

テストの自動化はDevOpsパイプラインの不可欠な要素であると広く見なされています。バグ、日付の遅れ、およびソフトウェアを市場へ出すのを遅らせるような進行の遅いプロセスの全ては損失を意味します。Ranorex Studioを利用することでこれらを解決することが可能です。

Ranorex StudioをDevOpsに組み込むメリットの一点目が柔軟性です。 開発の初期段階においてはコードの変更率が高くなります。 さらに、変化の激しいビジネスにおいて、頻繁にコードが変更されることはプロジェクトに組み込む必要があります。アプリケーションが最終リリース段階にエスカレートするまでに徹底的にコードがテストされることで、変更率はほぼ停止にまで減少します。Ranorex Studioを利用し、展開段階までにコードは強化され、一般に公開する準備が整います。
DevOpsパイプラインの各ステージには目的があり、テストはプロセスの各段階の範囲と目的に従って実行されます。 パイプラインは予測可能であり、コードはあるステージから別のステージに順番に移動します。 さらに、Ranorex Studioはあらゆる環境に柔軟に対応します。 プロジェクトにおいて、DevOpsパイプラインがどれほど明確に定義されていても例外は常に発生するため、柔軟性は不可欠です。
ホットフィックスはできるだけ早く、ほぼ即時にリリースする必要があるミッションクリティカルなコードの一部で、常に発生します。そうなると一部の企業はパニックに陥り、パイプラインを迂回して、すべてがうまくいくことを期待しながら、開発からリリースまでコードを送信します。DevOpsに精通している企業は先見の明があり、DevOpsパイプラインが通常の展開プロセス以外のコードエスカレーションのエピソードに対応が必要な場合があると理解しています。これらの企業はDevOpsパイプラインに柔軟性を組み込んでいます。実際には、正式なパイプラインが提供する利点を失うことなく、リリースするコードを迅速に追跡するプロセスがあります。 このような迅速な追跡は、通常の展開手順とは別に、ホットフィックスコードが厳しく管理されたテストを受けるサイドステージを作成することを意味する場合があります。
次に、ホットフィックスがリリースされた後、柔軟な展開プロセスにより、制御された方法で、迅速に追跡されたコードが通常の段階に下流でマージされます。 修正プログラムに対応する制御されたダウンストリームマージは、DevOpsパイプラインに柔軟性を提供するための1つの手法にすぎません。
各企業は、通常の展開プロセスから外れる変更に対処するための独自の手法を持っています。秘訣は、制御された安全な方法で、DevOps展開プロセスに柔軟性を実装できるようにすることです。

メリットの二点目がテスト計画です。 すべての段階でテストを計画し、適切なテスト自動化戦略を持つことはDevOpsにとって非常に重要です。 Ranorex Studioを利用することで持続可能で反復可能な継続的なプロセスを構築し、可能な限り迅速なフィードバックメカニズムを組み込むことが可能です。 初期段階では、自動化のニーズに合わせてプロジェクトのスコープを設定する必要があります。 すべてを自動化することはできないため、自動化に必要な労力に対して、最大の結果をもたらすテストの種類を優先します。 これには、UIレベルでの回帰テストに加えて、テストピラミッドの下位レベルでの単体レベルおよび統合テストが含まれます。
他のテストが正常に完了した後に実行されるエンドツーエンドのテストの数は限られているため、ユニットと統合を個別にテストすると見逃されてしまう可能性がある、実際のタイミングや通信の問題などの問題を特定できます。 計画は、テストの自動化を設計および実装するために必要な専門知識を手に入れるのに役立ちます。 ただし、自動化するテストケースの数に関係なく、探索的テスト、固有のケース1回限りのテスト、アドホックテストなど一部のタイプのテストは自動化が困難または不可能であるため、これらのテストは人間が行う方が適切でしょう。

Ranorex Studio for Mac

Macで利用することが出来る点と、その方法について説明させていただきます。
Microsoft Windowsは、依然として世界中で支配的なオペレーティングシステムです。 2021年10月、Statistaは、Windowsがデスクトップ、タブレット、およびコンソールの世界 71%の市場シェアを持っていると報告しました。続く2位がAppleが、3位がLinuxです。ソフトウェア開発のプラットフォームに関しては、回答者の61%がWindowsを好み、Unix/Linuxが47%、macOSが44%であるのに対し、依然としてWindowsがトップとなっています。

Ranorexのミッションとしては、自動化スキル、開発テクノロジー、またはプラットフォームに関係なく、できるだけ多くのソフトウェアテスターのテスト自動化を可能にすることです。 そのため、追加のWebDriverアクションの拡張サポートを含めるなど、その使命をサポートするために評価中または進行中のイニシアチブがあります。
近年リリースしたRanorex Driverにより、JavaやPythonを含むほぼすべての言語で記述されたコードや、 Seleniumフレームワークを使用して記述されたテストでRanorexを使用できるようになります。 しかし、Ranorex StudioにおいてはWindowsアプリケーションとして開発することを引き続き優先していきます。 統計によると、それが大多数のユーザーと開発者に好まれるプラットフォームであるためです。

次に、具体的な方法について説明させていただきます。
Windows10を実行しているIntelベースのMacにRanorex Studioをインストールして、Windowsデスクトップ、Web、およびモバイルアプリのテストを自動化できます。
これは、Intelチップを搭載したMac OSコンピューターを既に利用しており、Ranorexを使用するためだけに別のWindowsコンピューターを購入したくない場合に最適なソリューションです。 Ranorex Studioの要件にはWindowsオペレーティング システムが含まれているため、AppleのネイティブBootCampユーティリティ、またはVMware FusionやParallels Desktop for Macなどの仮想化ソリューションを使用する必要があります。 MacのほとんどのRanorex StudioユーザーはParallelsを選択します。 どちらのオプションを選択しても、MacにインストールできるMicrosoft Windows 10のライセンスが必要です。
最初にMicrosoft Windowsを購入しなくても、Parallelsをダウンロードしてインストールすることができます。 インストールプロセス中に、ParallelsはMicrosoft Windowsをダウンロードしてインストールするように求めます。 ただし、インストールプロセスのデフォルトはWindows 11です。Ranorex Studioを使用するには、Windows 10をインストールしてアクティブ化する必要があります。 WindowsがMacで実行されたら、Ranorex Studioをインストールするプロセスは、他のWindows コンピューターと同じです。 テストの実行方法は、テスト対象のプラットフォームによって異なります。 たとえば、エンドポイントをセットアップしてiOS または Androidデバイスをテストできます。 リモートデスクトッププロトコル (RDP) を使用して手動で Windowsコンピューター上でテストを実行することも、 Ranorex Remote Agentを使用して自動的に実行することもできます。 リモートテストの実行には、少なくとも1つのランタイムフローティングライセンスが必要です。

Ranorex Studioと自動化

Ranorex Studioと自動化およびアジャイルについて説明させていただきます。
重要な点としては、すべてを自動化できるわけではないではないということです。 自動化の価値を最大限に引き出すには、自動化が必要なシナリオを検討することが大切です。 多くの場合、チームは手動でテストする方が簡単なタスクなど、不適切なタスクの自動化に多くの時間を費やしています。これにより、自動化が機能していないという誤った結論に達します。
どのような理由で自動化が不安定になるのか理解する必要があり、また、誤って使用すると実際には価値が低下するケース(ルックアンドフィールなど、アプリケーションのレンダリング問題を検出)に自動化を使用することは望ましくありません。
視覚的な検証を行うツールはいくつかありますが、この点で人間に取って代わることは非常に困難です。 たとえば、ある携帯電話ではモバイルWebページが白く、別の携帯電話では濃い灰色に見えるテストを行っていたシナリオがありました。これを自動化することはできますが、アプリケーションのルックアンドフィールの微妙な違いを見つけるには、人間の方が適しています。

自動化を使用してページ上の要素の位置を把握することも理想的ではありません。 Webページはさまざまなブラウザー、デバイス、オペレーティングシステムで表示される可能性があり、これらの座標は画面サイズに基づいて変化するため、要素のx、y座標に基づいてテストを書き始めると、自動テストは不安定になります。これは、自動化されたテストが不正確で一貫性がないことを意味します。
自動化を使用してソフトウェア、ハードウェア、Webサービス、API、およびクラウドサービスがすべてリアルタイムで相互に通信する統合システムをテストすることは、複雑すぎて価値がない場合があります。 たとえば、フィットネストラッカーのすべてのエンドツーエンドのシナリオを検証する自動テストを想定すると理解しやすいでしょう。実際の人間の動きと模擬サービスをシミュレートするためにできる限り努力することはできますが、フィットネストラッカーのプロセス全体を自動化するのは難しい作業になるでしょう。代わりに、いくつかの自動化されたテストと並行して、実際の人間に探索的テストを実行させる方が効果的です。

最新のアジャイル環境では、自動化されたテストは、要件フェーズからユーザーの受け入れと展開のフェーズまで、あらゆるレベルで実行できます。これは、 DevOpsと継続的なテストの領域で特に当てはまります。 DevOpsは、ソフトウェア開発チームと運用チームのコラボレーションを支援し、インフラストラクチャ管理も含むソフトウェア開発ライフサイクル (SDLC) 全体で継続的な自動化と監視を可能にします。 継続的なテストは、シフトレフトパラダイムに合わせて、SDLCでできるだけ早くテストを開始するのに役立ちます。

継続的なテストを実現するには、開発プロセスのさまざまな段階で自動化が必要になります。 具体例には以下の通りです。

  • ・テストの一環として行う内容に多くの変更があることを意味する
  • ・SDLCの開始時に自動化を開始し、ほぼすべてのテストケースが自動化されるようにする
  • ・すべてのQAタスクを調整して、スムーズなCI/CDサイクルを作成することが可能
  • ・本番環境での継続的な監視を可能にする高レベルのコラボレーションの作成や、すべてのQA環境を標準化する
  • ・このモジュールのテスト完了することから、リリース候補で軽減されたビジネスリスクとは何か、というようにテストの考え方を変更
これらすべての変更の鍵は自動化です。これは、DevOpsと継続的なテストを結び付ける材料であり スマートな人々とツールが、より短く、より信頼できるリリースサイクルを作成するのに役立つテクノロジーと言えるでしょう。

まとめ

いかがでしたでしょうか?
Ranorex Studioについて詳しく解説させていただきました。機能や特徴に関しては別記事で紹介しておりますので、そちらも含めて参考にしていただけましたら幸いです。