<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ツール連携 - テスト自動化ツール 『Ranorex』</title>
	<atom:link href="https://ranorex.techmatrix.jp/blog/category/tool-integration/feed/" rel="self" type="application/rss+xml" />
	<link>https://ranorex.techmatrix.jp</link>
	<description>Windowsデスクトップ・Web・モバイルアプリ対応</description>
	<lastBuildDate>Fri, 06 Nov 2026 04:37:24 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.4</generator>

<image>
	<url>https://ranorex.techmatrix.jp/wp-content/uploads/cropped-RNX-new_favicon-32x32.png</url>
	<title>ツール連携 - テスト自動化ツール 『Ranorex』</title>
	<link>https://ranorex.techmatrix.jp</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>環境差に対応した柔軟な画像比較 (Ranorex + OpenCV連携)</title>
		<link>https://ranorex.techmatrix.jp/blog/2026/08/17/opencv-imagevalidation/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Mon, 17 Aug 2026 00:00:00 +0000</pubDate>
				<category><![CDATA[Ranorex機能]]></category>
		<category><![CDATA[ツール連携]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=32187</guid>

					<description><![CDATA[<p>テスト環境の違いにより、人の目では判別しにくい微細な差異が原因で画像検証が失敗するケースがあります。OSSツールであるOpenCVとRanorexを連携し、OpenCVの高度な画像検証アルゴリズムを活用することで、微細な [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2026/08/17/opencv-imagevalidation/">環境差に対応した柔軟な画像比較 (Ranorex + OpenCV連携)</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img fetchpriority="high" decoding="async" width="788" height="443" src="https://ranorex.techmatrix.jp/wp-content/uploads/iStock-OpenCV連携.jpg" class="attachment-large size-large wp-post-image" alt="" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/iStock-OpenCV連携.jpg 788w, https://ranorex.techmatrix.jp/wp-content/uploads/iStock-OpenCV連携-300x169.jpg 300w, https://ranorex.techmatrix.jp/wp-content/uploads/iStock-OpenCV連携-768x432.jpg 768w, https://ranorex.techmatrix.jp/wp-content/uploads/iStock-OpenCV連携-320x180.jpg 320w" sizes="(max-width: 788px) 100vw, 788px" /></div>
<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">テスト環境の違いにより、人の目では判別しにくい微細な差異が原因で画像検証が失敗するケースがあります。OSSツールであるOpenCVとRanorexを連携し、OpenCVの高度な画像検証アルゴリズムを活用することで、微細な差分を自動的に許容して検証成功と判定できることを確認しました。</p>



<p class="wp-block-paragraph">今回の記事では、RanorexとOpenCVを組み合わせた画像検証手法についてご紹介します。</p>



<h3 class="wp-block-heading"><strong>OpenCVとは</strong></h3>



<p class="wp-block-paragraph">OpenCV（Open Source Computer Vision Library）は、Intelが開発した画像処理・画像解析・コンピュータビジョン向けのオープンソースライブラリです。</p>



<p class="wp-block-paragraph">2,500以上の最適化されたアルゴリズムが含まれており、<strong>画像の読み込み</strong>、<strong>保存</strong>、<strong>リサイズ</strong>、<strong>回転</strong>、<strong>グレースケール化</strong>、<strong>ノイズ除去</strong>などの基本的な処理に加え、画像比較に使われる<strong>構造類似度指標</strong>（<strong>SSIM</strong>: Structural Similarity Index Measure）などの高度なアルゴリズムも備えています。</p>



<p class="wp-block-paragraph">SSIMは単純なピクセル差分ではなく、画像の明るさ、コントラスト、構造の類似性を評価し、<strong>人間の視覚に近い形で画像の差異を検出</strong>することができます。OpenCVはこのように幅広い画像処理機能に加え、高度な画像比較技術も提供しており、幅広い分野で利用されています。</p>



<p class="wp-block-paragraph">OpenCVの公式サイトは以下です。(2026年8月時点)<br><a href="https://opencv.org/" title="">https://opencv.org/</a></p>



<h3 class="wp-block-heading"><strong>RanorexとOpenCVの連携でできること</strong></h3>



<p class="wp-block-paragraph">Ranorexの画像検証機能は、ピクセル単位での厳密な比較で高精度な画像比較ができます。さらに、OpenCVと連携することで、OpenCVの<strong>構造類似度指標（SSIM）</strong>を用いたより高度な画像比較を利用できるようになります。この連携により、<strong>表示環境の違いによる微細な差分を柔軟に許容した画像検証が可能</strong>になります。</p>



<p class="wp-block-paragraph">たとえば、<strong>ブラウザーや実行環境の違いにより発生する文字やグラフィックのわずかなズレや揺れを自動検知・調整</strong>することで、<strong>人間の目では認識できない微細な差分を許容</strong>し<strong>、</strong>より実用的な判定をおこなうことができます。※画像の複雑さなどで対応できないケースもあります。</p>



<h3 class="wp-block-heading"><strong>RanorexとOpenCVの連携</strong></h3>



<p class="wp-block-paragraph">Ranorexは <strong>C# / .NET Framework</strong> ベースで動作するツールのため、C#用のオープンソースラッパーである OpenCvSharp を利用します。ここでは、弊社環境で検証した画像比較の設定をご紹介します。※2026年8月時点の情報です。</p>



<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size wp-block-paragraph"><strong>1.RanorexプロジェクトにOpenCvSarpを追加する</strong></p>



<p class="wp-block-paragraph">1.Ranorexのプロジェクトで、NuGet パッケージ マネージャーを開く。<br>メニューバー「プロジェクト」&gt;「パッケージの管理」</p>



<figure class="wp-block-image size-full"><img decoding="async" width="397" height="350" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-147.png" alt="" class="wp-image-32195" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-147.png 397w, https://ranorex.techmatrix.jp/wp-content/uploads/image-147-300x264.png 300w" sizes="(max-width: 397px) 100vw, 397px" /></figure>



<p class="wp-block-paragraph">2.検索ボックスに「OpenCvSharp」を入力し、<strong>OpenCvSharp core library</strong> と <strong>OpenCvSharp4 native bindings for Windows x64</strong> をプロジェクトにインストールする。</p>



<figure class="wp-block-image size-large is-resized"><img decoding="async" width="1024" height="324" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-148-1024x324.png" alt="" class="wp-image-32197" style="width:848px;height:auto" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-148-1024x324.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/image-148-300x95.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-148-768x243.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/image-148.png 1376w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">※今回、ご紹介するユーザーコードでは <strong>StronglyTyped.PixelMatch.net</strong> のパッケージも利用しますので、追加が必要です。</p>



<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size wp-block-paragraph"><strong>2.ビルド対象（プラットフォームターゲット）を統一する</strong></p>



<p class="wp-block-paragraph">1.Ranorexのプロジェクトで、プロジェクトオプションを開く。<br>メニューバー <strong>プロジェクト</strong> &gt; <strong>パッケージの管理 </strong></p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="442" height="545" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-149.png" alt="" class="wp-image-32201" style="width:301px;height:auto" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-149.png 442w, https://ranorex.techmatrix.jp/wp-content/uploads/image-149-243x300.png 243w" sizes="(max-width: 442px) 100vw, 442px" /></figure>



<p class="wp-block-paragraph">2.ターゲットCPUをインストールしたOpenCsSharpのビット数に合わせる。上記でインストールしたパッケージは64bitのため、<strong>64-bit Intel-compatible processor</strong> に設定する。</p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="972" height="533" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-150.png" alt="" class="wp-image-32204" style="width:777px;height:auto" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-150.png 972w, https://ranorex.techmatrix.jp/wp-content/uploads/image-150-300x165.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-150-768x421.png 768w" sizes="(max-width: 972px) 100vw, 972px" /></figure>



<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size wp-block-paragraph"><strong>3.期待画像のスクリーンショットを用意する</strong></p>



<p class="wp-block-paragraph">今回、ご紹介するユーザーコードでは、手動で取得したスクリーンショットを期待画像として設定できますので、期待画像をローカルマシンに保存ください。また、今回の画像形式はPNGにしています。</p>



<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size wp-block-paragraph"><strong>4.TMX提供のオートメーションヘルパーの「ReportPageScreenshot」でスクリーンショットの取得アクションを追加する</strong></p>



<p class="wp-block-paragraph"><strong><a href="https://ranorex.techmatrix.jp/blog/2026/06/12/tmx_automation_helpers_reportpagescreenshot/" title="">TMX Automation Helpers リファレンス６：スクリーンショットの出力</a></strong>をご参照ください。<br>アクションを追加すると以下のような設定ができます。画像ファイルは <strong>モジュール名_yyyyMMdd_HHmm_出力画像ファイル名.png</strong> の名前で出力されます。</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="908" height="54" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-162.png" alt="" class="wp-image-32277" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-162.png 908w, https://ranorex.techmatrix.jp/wp-content/uploads/image-162-300x18.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-162-768x46.png 768w" sizes="(max-width: 908px) 100vw, 908px" /></figure>



<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size wp-block-paragraph"><strong>5.OpenCVを利用して、期待画像と実行時に取得した画像を比較するコードを記述する</strong></p>



<p class="wp-block-paragraph">1.ユーザーコードコレクションをプロジェクトに追加する</p>



<p class="wp-block-paragraph">追加方法やメソッドの作成についての詳細は<strong><a href="https://ranorex.techmatrix.jp/blog/2020/06/19/creating-tests-using-source-code_user-code-collection/" title="">ソースコードを使用したテスト作成 / ユーザーコードコレクション</a></strong>をご参照ください。</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="376" height="117" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-163.png" alt="" class="wp-image-32282" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-163.png 376w, https://ranorex.techmatrix.jp/wp-content/uploads/image-163-300x93.png 300w" sizes="(max-width: 376px) 100vw, 376px" /></figure>



<p class="wp-block-paragraph">2.作成されたユーザーコードコレクションファイルに使用するパッケージを追加する</p>



<pre class="wp-block-code"><code>using System.IO;
using OpenCvSharp;         
using OpenCvSharp.Quality; </code></pre>



<p class="wp-block-paragraph">3.クラスに以下のメソッドを記述する</p>



<div style="background-color: #272822; color: #f8f8f2; padding: 15px; border-radius: 8px;
            max-height: 500px; overflow-x: auto; overflow-y: auto; white-space: pre; font-size: 14px; line-height: 1.5;">
  <code style="color: #f8f8f2;">
//取得したスクリーンショットの検索メソッド
private static string FindExistingImagePath(string currentImgDirPath, string mdName, string currentImgName, System.DateTime baseTime)
{
    int[] offsets = { -1, 0, 1 };  // ここでoffsetsを定義

    foreach (int offset in offsets)
    {
        System.DateTime checkTime = baseTime.AddMinutes(offset);
        string nowTimeStr = checkTime.ToString("yyyyMMdd_HHmm");
        string candidateFileName = $"{mdName}_{nowTimeStr}_{currentImgName}.png";
        string candidatePath = Path.Combine(currentImgDirPath, candidateFileName);

        if (File.Exists(candidatePath))
        {
            Report.Info($"存在する画像ファイルを発見: {candidatePath}");
            return candidatePath;
        }
    }
    return null;
}

//OpenCVを利用したSSIMによる画像検証メソッド
public static bool CompareImageBySSIM(string baseImgPath, string currentImgDirPath, string currentImgName, double ssimThreshold = 0.95)
{
    var curModule = TestModuleLeaf.Current;
    string mdName = curModule.Name;
    System.DateTime datetime = System.DateTime.Now;

    string currentImgPath = FindExistingImagePath(currentImgDirPath, mdName, currentImgName, datetime);
    if (currentImgPath == null)
    {
        Report.Error("±1分差のファイルが見つかりませんでした。ファイル名やディレクトリを確認してください。");
        return false;
    }

    using (Mat mat1Gray = Cv2.ImRead(baseImgPath, ImreadModes.Grayscale))
    using (Mat mat2Gray = Cv2.ImRead(currentImgPath, ImreadModes.Grayscale))
    {
        if (mat1Gray.Empty() || mat2Gray.Empty())
        {
            Report.Error("画像の読み込みに失敗しました。ファイルパスを確認してください。");
            return false;
        }

        // 背景（白）ではない「文字が存在する最小の四角枠」を自動検出
        Rect textRegion;
        using (Mat inverted = new Mat())
        {
            Cv2.Threshold(mat1Gray, inverted, 250, 255, ThresholdTypes.BinaryInv);
            textRegion = Cv2.BoundingRect(inverted);
        }

        if (textRegion.Width == 0 || textRegion.Height == 0)
        {
            textRegion = new Rect(0, 0, mat1Gray.Width, mat1Gray.Height);
        }
        else
        {
            textRegion.X = Math.Max(0, textRegion.X - 20);
            textRegion.Y = Math.Max(0, textRegion.Y - 20);
            textRegion.Width = Math.Min(mat1Gray.Width - textRegion.X, textRegion.Width + 40);
            textRegion.Height = Math.Min(mat1Gray.Height - textRegion.Y, textRegion.Height + 40);
        }

        // 割り出した「文字エリア」をテンプレート画像として切り出す
        using (Mat templateMat = new Mat(mat1Gray, textRegion))
        using (Mat matchResult = new Mat())
        {
            Cv2.MatchTemplate(mat2Gray, templateMat, matchResult, TemplateMatchModes.CCoeffNormed);
            Cv2.MinMaxLoc(matchResult, out _, out _, out _, out OpenCvSharp.Point maxLoc);

            float shiftX = textRegion.X - maxLoc.X;
            float shiftY = textRegion.Y - maxLoc.Y;

            Report.Info($"[位置補正自動計算] 検出された文字エリアのズレ -&gt; X方向: {shiftX}px, Y方向: {shiftY}px");

            // アフィン変換行列を作成してテスト対象画像を全体シフト
            using (Mat translationMatrix = new Mat(2, 3, MatType.CV_32FC1))
            {
                translationMatrix.Set&lt;float&gt;(0, 0, 1.0f);
                translationMatrix.Set&lt;float&gt;(0, 1, 0.0f);
                translationMatrix.Set&lt;float&gt;(0, 2, shiftX);
                translationMatrix.Set&lt;float&gt;(1, 0, 0.0f);
                translationMatrix.Set&lt;float&gt;(1, 1, 1.0f);
                translationMatrix.Set&lt;float&gt;(1, 2, shiftY);

                using (Mat resizedMat2AlignedAll = new Mat())
                {
                    OpenCvSharp.Size baseSize = mat1Gray.Size();
                    Cv2.WarpAffine(mat2Gray, resizedMat2AlignedAll, translationMatrix, baseSize);

                    // 文字エリア（ROI）を切り出す
                    using (Mat roiBaseRaw = new Mat(mat1Gray, textRegion))
                    using (Mat roiTargetAlignedRaw = new Mat(resizedMat2AlignedAll, textRegion))
                    {
                        // --- 【修正】二値化＋モルフォロジー演算でエッジのガタつきを平滑化 ---
                        using (Mat binBase = new Mat())
                        using (Mat binTarget = new Mat())
                        using (Mat roiBase = new Mat())
                        using (Mat roiTargetAligned = new Mat())
                        {
                            // 固定値（200）で一律二値化し、判定基準のブレを無くす
                            Cv2.Threshold(roiBaseRaw, binBase, 200, 255, ThresholdTypes.Binary);
                            Cv2.Threshold(roiTargetAlignedRaw, binTarget, 200, 255, ThresholdTypes.Binary);

                            // 3x3の構造要素（カーネル）を作成
                            using (Mat kernel = Cv2.GetStructuringElement(MorphShapes.Rect, new OpenCvSharp.Size(3, 3)))
                            {
                                // クロージング処理（文字のフチの微細なギザギザ・ノイズを埋めて滑らかにする）
                                Cv2.MorphologyEx(binBase, roiBase, MorphTypes.Close, kernel);
                                Cv2.MorphologyEx(binTarget, roiTargetAligned, MorphTypes.Close, kernel);
                            }

                            // 平滑化された画像同士でSSIMを計算
                            using (var ssimCalc = QualitySSIM.Create(roiBase))
                            {
                                Scalar score = ssimCalc.Compute(roiTargetAligned);
                                double meanSSIM = score.Val0;

                                Report.Info($"[SSIM判定] エッジ平滑化後のスコア: {meanSSIM:F4} (閾値: {ssimThreshold})");

                                // 差分画像の保存処理
                                try
                                {
                                    using (Mat diffMat = new Mat())
                                    {
                                        Cv2.Absdiff(roiBase, roiTargetAligned, diffMat);
                                        using (Mat threshDiff = new Mat())
                                        {
                                            Cv2.Threshold(diffMat, threshDiff, 1, 255, ThresholdTypes.Binary);
                                            using (Mat highlightMat = new Mat())
                                            {
                                                Cv2.CvtColor(roiTargetAlignedRaw, highlightMat, ColorConversionCodes.GRAY2BGR);
                                                highlightMat.SetTo(new Scalar(0, 0, 255), threshDiff);

                                                string directory = Path.GetDirectoryName(currentImgPath);
                                                string filename = Path.GetFileNameWithoutExtension(currentImgPath);
                                                string diffImgPath = Path.Combine(directory, filename + "_diff.png");

                                                Cv2.ImWrite(diffImgPath, highlightMat);
                                                Report.Info($"差分画像を保存しました: {diffImgPath}");
                                            }
                                        }
                                    }
                                }
                                catch (Exception ex)
                                {
                                    Report.Warn($"差分画像の生成中にエラーが発生しました: {ex.Message}");
                                }

                                if (meanSSIM &gt;= ssimThreshold)
                                {
                                    Report.Success("文字の位置ズレ、滲み、微細なガタつきはすべて許容されました。");
                                    return true;
                                }
                                else
                                {
                                    Report.Failure("形状平滑化後もスコアが低いため、文字の欠落やレイアウト崩れが発生しています。");
                                    return false;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
  </code>
</div>



<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="wp-block-paragraph">記述内容：</p>



<ul class="wp-block-list">
<li>文字が存在する領域（最小の四角枠）を自動検出</li>



<li>文字領域をテンプレートして、文字領域の位置ズレを補正</li>



<li>文字領域のクロージング処理で文字の輪郭の微細なギザギザやノイズを滑らかに補正</li>



<li>SSIM（構造類似度指数）を用いた画像比較</li>



<li>2つの画像の異なる箇所を赤色でハイライトした差分画像を保存</li>
</ul>



<p class="wp-block-paragraph">4.手順3で作成したメソッドを使ったユーザーコードアクションを「ReportPageScreenshot」メソッドのユーザーコードアクションの次に追加する</p>



<ul class="wp-block-list">
<li>レコーディングモジュールの <strong>新しいアクションの追加</strong> のプルダウンメニューから、<strong>ユーザーコード（User code）</strong>‐<strong>ライブラリから選択</strong>を選択します。</li>
</ul>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="792" height="246" src="https://ranorex.techmatrix.jp/wp-content/uploads/2020/04/図6.png" alt="" class="wp-image-4073" style="width:512px;height:auto" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/2020/04/図6.png 792w, https://ranorex.techmatrix.jp/wp-content/uploads/2020/04/図6-300x93.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/2020/04/図6-768x239.png 768w" sizes="(max-width: 792px) 100vw, 792px" /></figure>



<ul class="wp-block-list">
<li>以下の <strong>CompareImageBySSIM</strong> メソッドを選択します。</li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="834" height="170" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-166.png" alt="" class="wp-image-32319" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-166.png 834w, https://ranorex.techmatrix.jp/wp-content/uploads/image-166-300x61.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-166-768x157.png 768w" sizes="(max-width: 834px) 100vw, 834px" /></figure>



<p class="wp-block-paragraph">アクションを追加すると以下のような設定ができます。閾値は1に近い数値を設定することで、人の目では分からない微差のみを成功とできます。<br>※0.98以下になると人の目でも認識できる差分が成功となるケースがあります。</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="921" height="83" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-165.png" alt="" class="wp-image-32316" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-165.png 921w, https://ranorex.techmatrix.jp/wp-content/uploads/image-165-300x27.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-165-768x69.png 768w" sizes="(max-width: 921px) 100vw, 921px" /></figure>



<h3 class="wp-block-heading"><strong>検証結果</strong></h3>



<p class="has-medium-font-size wp-block-paragraph"><strong>検証対象の画像</strong></p>



<p class="wp-block-paragraph">環境の違いにより、全体的な文字ズレと文字の滲み・ギザギザ感が発生している画像を検証対象とします。たとえば、Chromeブラウザーで取得した期待画像を設定しており、テスト実行環境ではEdge Chromiumブラウザーでテストするケースなど。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="421" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-167-1024x421.png" alt="" class="wp-image-32340" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-167-1024x421.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/image-167-300x123.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-167-768x315.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/image-167-1536x631.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/image-167.png 1709w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="792" height="725" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-168.png" alt="" class="wp-image-32423" style="width:416px;height:auto" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-168.png 792w, https://ranorex.techmatrix.jp/wp-content/uploads/image-168-300x275.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-168-768x703.png 768w" sizes="(max-width: 792px) 100vw, 792px" /></figure>
</div>


<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size wp-block-paragraph"><strong>検証結果レポート</strong></p>



<p class="wp-block-paragraph">文字の位置ズレや微細なガタつきを自動検出して、画像検証された結果、スコアは1で完全に一致と判定され、画像検証は成功しました。</p>



<p class="wp-block-paragraph"><strong>成功パターン</strong></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="538" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-172-1024x538.png" alt="" class="wp-image-32418" style="width:930px;height:auto" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-172-1024x538.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/image-172-300x158.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-172-768x404.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/image-172.png 1499w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">人の目でも認識できる差分がある場合は、画像検証が失敗します。</p>



<p class="wp-block-paragraph"><strong>失敗パターン</strong></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="681" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-171-1024x681.png" alt="" class="wp-image-32415" style="width:935px;height:auto" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-171-1024x681.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/image-171-300x199.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-171-768x511.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/image-171.png 1382w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">差分画像は出力先(currentImgDirPath)に保存されます。</p>



<p class="wp-block-paragraph"><strong>差分画像</strong></p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="760" height="453" src="https://ranorex.techmatrix.jp/wp-content/uploads/Recording1_20260813_1558_実際の画像_diff.png" alt="" class="wp-image-32412" style="width:589px;height:auto" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/Recording1_20260813_1558_実際の画像_diff.png 760w, https://ranorex.techmatrix.jp/wp-content/uploads/Recording1_20260813_1558_実際の画像_diff-300x179.png 300w" sizes="(max-width: 760px) 100vw, 760px" /></figure>



<div style="height:19px" aria-hidden="true" class="wp-block-spacer"></div>



<p class="has-medium-font-size wp-block-paragraph"><strong>サンプルソリューション</strong></p>



<p class="wp-block-paragraph">本検証ができるサンプルソリューションは、以下のボタンからダウンロードできます。<br>※ダウンロードが始まらない場合は、Edgeブラウザーでお試しください。</p>



<div class="wp-block-file"><a id="wp-block-file--media-160afd91-6602-4015-8483-dc2ad511bcbb" href="https://ranorex.techmatrix.jp/wp-content/uploads/画像検証_OpenCV連携.zip">画像検証_OpenCV連携ソリューション</a><a href="https://ranorex.techmatrix.jp/wp-content/uploads/画像検証_OpenCV連携.zip" class="wp-block-file__button wp-element-button" download aria-describedby="wp-block-file--media-160afd91-6602-4015-8483-dc2ad511bcbb">ダウンロード</a></div>



<h3 class="wp-block-heading"><strong>まとめ</strong></h3>



<p class="wp-block-paragraph">Ranorexの画像検証機能は、ピクセル単位での厳密な比較で高精度な画像比較ができます。さらに、OpenCVと連携することで、OpenCVの<strong>構造類似度指標（SSIM）</strong>を用いたより高度な画像比較を利用できるようになり、人の目では判別しづらい微細な文字のズレやガタつきを補正し、許容範囲として正確に判定できます。</p>



<p class="wp-block-paragraph">今回ご紹介したコードのように、お客様ご自身でOpenCVと連携したカスタム画像検証を実装することで、より実用的で柔軟な画像比較が可能になります。ぜひOpenCVの強力なアルゴリズムを活用し、お客様のニーズに合った画像検証環境を構築ください。</p><p>The post <a href="https://ranorex.techmatrix.jp/blog/2026/08/17/opencv-imagevalidation/">環境差に対応した柔軟な画像比較 (Ranorex + OpenCV連携)</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Azure DevOps との連携</title>
		<link>https://ranorex.techmatrix.jp/blog/2024/10/16/integrating-azure-devops/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Wed, 16 Oct 2024 01:00:36 +0000</pubDate>
				<category><![CDATA[ツール連携]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=26295</guid>

					<description><![CDATA[<p>Ranorex には、クラウドベースのCIソフトウェアである Azure DevOps との連携機能が備えられています。この機能を活用することで、Ranorex で作成したテストをAzure DevOps のビルドパイプ [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2024/10/16/integrating-azure-devops/">Azure DevOps との連携</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img loading="lazy" decoding="async" width="1024" height="583" src="https://ranorex.techmatrix.jp/wp-content/uploads/DevOps-1024x583.png" class="attachment-large size-large wp-post-image" alt="" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/DevOps-1024x583.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/DevOps-300x171.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/DevOps-768x437.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/DevOps-1536x874.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/DevOps.png 1648w" sizes="(max-width: 1024px) 100vw, 1024px" /></div>
<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">Ranorex には、クラウドベースのCIソフトウェアである <a href="https://azure.microsoft.com/ja-jp/products/devops" target="_blank" rel="noopener" title="">Azure DevOps</a> との連携機能が備えられています。この機能を活用することで、Ranorex で作成したテストをAzure DevOps のビルドパイプラインで実行することができます。<br>そこで今回の記事では、Ranorex をAzure DevOps と連携させるメリットと、連携手順についてご紹介します。</p>



<h3 class="wp-block-heading">Azure DevOps 連携のメリット</h3>



<p class="wp-block-paragraph">Azure DevOps は、クラウドベースのCIソフトウェアです。CIツールとしては、Azure DevOps 以外にも Jenkins（※） なども代表的なCIツールの一つです。<br>※Jenkins との連携については、Ranorex Blog の <a href="https://ranorex.techmatrix.jp/blog/2019/08/09/integrating-ranorex-automation-in-jenkins-continuous-integration-process/" target="_blank" rel="noopener" title=""><strong>Jenkins への自動化テストの統合</strong></a> をご参考ください。<br>Azure DevOps は Microsoft社が提供しているサービスとなるため、Windows との親和性が高いツールとなります。そのため、Windows OS で動作するRanorex との親和性も高く、スムーズに連携できます。<br><br>Azure DevOps と連携することで、業務中や夜間にテストを実行したり、定期的にテストを実行することができるため、以下のようなメリットが考えられます。</p>



<ul class="wp-block-list">
<li>テスト実行自体の工数が削減され、 テスト結果の確認に注力できる</li>



<li>コードの変更にともなうアプリケーション全体への影響を確認し、定期的かつ迅速なフィードバック がおこなえる</li>



<li>開発メンバー全員でビルド状況を確認できる</li>
</ul>



<p class="wp-block-paragraph">これらのメリットは、品質の高いソフトウェア開発につながります。</p>



<h3 class="wp-block-heading">Azure DevOps との連携に関する資料のご案内</h3>



<p class="wp-block-paragraph">Ranorex と Azure DevOps との連携については、<a href="https://support2.ranorex.com/ja/userguide/interfaces-connectivity/azure-devops-integration/introduction/" target="_blank" rel="noopener" title=""><strong>Ranorex ユーザーガイド</strong></a> に記載されていますが、より詳細な連携手順に関する資料をご用意しました。<br>資料は以下のリンクからダウンロードできますので、ぜひご参考ください。</p>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button aligncenter"><a class="wp-block-button__link wp-element-button" href="https://ranorex.techmatrix.jp/wp-content/uploads/Azure-DevOps-との連携.pdf" target="_blank" rel="noreferrer noopener">資料ダウンロード</a></div>
</div><p>The post <a href="https://ranorex.techmatrix.jp/blog/2024/10/16/integrating-azure-devops/">Azure DevOps との連携</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Ranorex + diff-pdf 連携によるPDF比較</title>
		<link>https://ranorex.techmatrix.jp/blog/2024/07/12/ranorex_diff-pdf/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Fri, 12 Jul 2024 02:00:06 +0000</pubDate>
				<category><![CDATA[ツール連携]]></category>
		<category><![CDATA[ノウハウ]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=25347</guid>

					<description><![CDATA[<p>今回は、Ranorexとreg-cli（reg-suit）の連携によるPDFファイル比較の検証について紹介します。Ranorex単体でも、画像比較を使用するこで、PDFファイルを画像として比較することが可能であり、どの方 [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2024/07/12/ranorex_diff-pdf/">Ranorex + diff-pdf 連携によるPDF比較</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img loading="lazy" decoding="async" width="1024" height="659" src="https://ranorex.techmatrix.jp/wp-content/uploads/20240712_法律における人工知能-1-1024x659.png" class="attachment-large size-large wp-post-image" alt="" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20240712_法律における人工知能-1-1024x659.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/20240712_法律における人工知能-1-300x193.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20240712_法律における人工知能-1-768x494.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/20240712_法律における人工知能-1-1536x988.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/20240712_法律における人工知能-1.png 1700w" sizes="(max-width: 1024px) 100vw, 1024px" /></div>
<p class="wp-block-paragraph">今回は、Ranorexとreg-cli（reg-suit）の連携によるPDFファイル比較の検証について紹介します。<br>Ranorex単体でも、<strong><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-fundamentals/test-validation/image-based-validation-example/" target="_blank" rel="noopener" title="">画像比較</a></strong>を使用するこで、PDFファイルを画像として比較することが可能であり、どの方法を使用するかはテスト内容や環境に合わせて選択することができます。</p>



<h3 class="wp-block-heading"><strong>diff-pdfとは？</strong></h3>



<p class="wp-block-paragraph"><strong>diff-pdf</strong>は、&nbsp;PDFファイルを視覚的に比較するためのツール（OSS）です。<br>Windows用に、バイナリとして提供されており、コマンドラインで使用できます。<br>diff-pdfは、以下のサイトから入手可能です。</p>



<p class="wp-block-paragraph"><a href="https://vslavik.github.io/diff-pdf/">https://vslavik.github.io/diff-pdf/</a></p>



<p class="wp-block-paragraph"><em>※本記事では、Ranorex v11.3.3 を使用しています。</em></p>



<p class="wp-block-paragraph">コマンドライン上でdiff-pdfを実行することで、パラメータとして指定した比較元となるPDFファイルと、比較対象となるPDFファイルの比較を行うことができます。</p>



<pre class="wp-block-code"><code>diff-pdf --output-diff={比較結果レポート}.pdf {比較元となるPDFファイル}.pdf {比較対象となるPDFファイル}.pdf</code></pre>



<p class="wp-block-paragraph">diff-pdfの実行時に以下のパラメータ、オプションを使用することができます。</p>



<ul class="wp-block-list">
<li><strong>-v</strong>, <strong>&#8211;verbose</strong>：差分結果をコマンドライン上に出力する。</li>



<li><strong>-s</strong>, <strong>&#8211;skip-identical</strong>：比較結果の差分のみを出力する。（※<strong>&#8211;output-diff</strong>オプションと併用） </li>



<li><strong>-m</strong>, <strong>&#8211;mark-differences</strong>： 出力した差分結果において、差分がある行を左端に表示する 。</li>



<li><strong>-g</strong>, <strong>&#8211;grayscale</strong>：色の違いのみを比較する。差分が無い場合は、灰色で表示される。</li>



<li><strong>&#8211;output-diff=&lt;str&gt;</strong>：差分結果をPDFファイルに出力する。</li>



<li><strong>&#8211;channel-tolerance=&lt;num&gt;</strong>：差分を判定する基準値（閾値）の範囲を0～255の範囲で指定する。（※初期値は0で設定されており、完全一致となる） </li>



<li><strong>&#8211;per-page-pixel-tolerance=&lt;num&gt;</strong>：ページ単位で差分が許容されるピクセル数。 </li>



<li><strong>&#8211;dpi=&lt;num&gt;</strong>：ラスタライズ解像度。（初期値：300dpi）</li>



<li><strong>&#8211;view</strong>：差分結果をウィンドウ上に表示する。</li>
</ul>



<p class="wp-block-paragraph">以下にRanorex＋diff-pdf連携によるpdfの比較について解説します。</p>



<h3 class="wp-block-heading"><strong>テストの流れ</strong></h3>



<p class="wp-block-paragraph">Ranorex StudioのUIテスト実行時にアプリから出力されたPDFファイルを使用し、diff-pdfで比較して結果を出力する流れになります。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="753" src="https://ranorex.techmatrix.jp/wp-content/uploads/20240712_2-1024x753.png" alt="" class="wp-image-25640" style="width:622px;height:457px" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20240712_2-1024x753.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/20240712_2-300x221.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20240712_2-768x565.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/20240712_2-1536x1129.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/20240712_2-2048x1506.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h3 class="wp-block-heading"><strong>テストの準備</strong></h3>



<h5 class="wp-block-heading"><strong>1. テストの作成</strong></h5>



<p class="wp-block-paragraph">Ranorexを使用して、比較するPDFファイルを出力する操作のテストケースを作成します。</p>



<h5 class="wp-block-heading"><strong>2. diff-pdfの設定</strong></h5>



<p class="wp-block-paragraph">新規に用意したレコーディングモジュールにて、Run applicationアクションを使用して、diff-pdf（diff-pdf.exe）を実行するように設定します。Run applicationアクションのArguments項目には、diff-pdfのパラメーターを指定します。<br><br><em>※diff-pdfに渡すパラメーターは、Arguments項目を変数化し、Ranorexの<a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-advanced/data-driven-testing/introduction/" target="_blank" rel="noopener" title=""><strong>データソース</strong></a>や<a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-advanced/data-driven-testing/parameters/" target="_blank" rel="noopener" title=""><strong>パラメー</strong></a><strong><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-advanced/data-driven-testing/parameters/" target="_blank" rel="noopener" title="">タ</a></strong><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-advanced/data-driven-testing/parameters/" target="_blank" rel="noopener" title=""><strong>ー</strong></a>の機能を使用することで可変にすることができます。また、<a href="https://ranorex.techmatrix.jp/blog/2020/05/08/creating-tests-using-source-code/" target="_blank" rel="noopener" title=""><strong>ユーザーコード</strong></a>の機能を使用することで、更に複雑な指定方法も可能です。</em></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="107" src="https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-184008-1024x107.png" alt="" class="wp-image-25615" style="width:891px;height:93px" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-184008-1024x107.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-184008-300x31.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-184008-768x80.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-184008.png 1100w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">テストスイートにて、テストの最後に、設定したレコーディングモジュールを追加します。<br>下図は、”<strong>PDF比較</strong>“のテストケースに、上記の設定を行った”<strong>diff_pdfの実行</strong>“のレコーディングモジュールを指定した例になります。テストを実行すると初めにUIテストをおこない比較するPDFファイルが出力され、最後にPDFファイルの比較を実行します。</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="608" height="304" src="https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-173725.png" alt="" class="wp-image-25611" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-173725.png 608w, https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-173725-300x150.png 300w" sizes="(max-width: 608px) 100vw, 608px" /></figure>



<h3 class="wp-block-heading"><strong>実行結果</strong></h3>



<p class="wp-block-paragraph">PDFファイルの比較結果は、diff-pdfで出力されたHTMLレポートにて確認できます。<br>下図は差分結果になり、差分のない個所は灰色で表示され、差分がある個所には色が付きます。</p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="908" height="602" src="https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-181607.png" alt="" class="wp-image-25617" style="width:574px;height:381px" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-181607.png 908w, https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-181607-300x199.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/スクリーンショット-2024-07-11-181607-768x509.png 768w" sizes="(max-width: 908px) 100vw, 908px" /></figure>



<p class="wp-block-paragraph"><strong>比較したPDFファイル：</strong></p>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="579" src="https://ranorex.techmatrix.jp/wp-content/uploads/20240711_1-1024x579.png" alt="" class="wp-image-25618" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20240711_1-1024x579.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_1-300x170.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_1-768x434.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_1-1536x869.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_1-2048x1158.png 2048w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_1-320x180.png 320w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">PDF比較用サンプル1.pdf</figcaption></figure>
</div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="579" src="https://ranorex.techmatrix.jp/wp-content/uploads/20240711_2-1024x579.png" alt="" class="wp-image-25619" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20240711_2-1024x579.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_2-300x170.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_2-768x434.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_2-1536x869.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_2-2048x1158.png 2048w, https://ranorex.techmatrix.jp/wp-content/uploads/20240711_2-320x180.png 320w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">PDF比較用サンプル2.pdf</figcaption></figure>
</div>
</div>



<h3 class="wp-block-heading"><strong>まとめ</strong></h3>



<p class="wp-block-paragraph">Ranorexにも画像比較をおこなうためのValidationアクション（<strong>ContainsImage</strong>、<strong>CompareImage</strong>）や、Ranorex APIが用意されており、これらを使用することによりPDFファイルの比較を実施することも可能です。また、今回、紹介した様な他ツールと連携することでもPDFファイルの比較をおこなうことができ、開発プロジェクトに合わせたテスト方法を選択し、柔軟に対応することが可能です。</p><p>The post <a href="https://ranorex.techmatrix.jp/blog/2024/07/12/ranorex_diff-pdf/">Ranorex + diff-pdf 連携によるPDF比較</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>テスト自動化シナリオのバージョン管理</title>
		<link>https://ranorex.techmatrix.jp/blog/2023/03/03/vcs_integration_svn/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Fri, 03 Mar 2023 02:00:32 +0000</pubDate>
				<category><![CDATA[ツール連携]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=19593</guid>

					<description><![CDATA[<p>Ranorexには、バージョン管理ツール(Git/Subversion/TFVC)との連携機能が備えられています。この機能を活用することで、単にテスト資産のバージョン管理ができるというだけではなく、継続的なUIテスト自動 [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2023/03/03/vcs_integration_svn/">テスト自動化シナリオのバージョン管理</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img loading="lazy" decoding="async" width="740" height="471" src="https://ranorex.techmatrix.jp/wp-content/uploads/vcs_20230224.jpg" class="attachment-large size-large wp-post-image" alt="" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/vcs_20230224.jpg 740w, https://ranorex.techmatrix.jp/wp-content/uploads/vcs_20230224-300x191.jpg 300w" sizes="(max-width: 740px) 100vw, 740px" /></div>
<p class="wp-block-paragraph">Ranorexには、バージョン管理ツール(Git/Subversion/TFVC)との連携機能が備えられています。この機能を活用することで、単にテスト資産のバージョン管理ができるというだけではなく、継続的なUIテスト自動化を進めていく上でのメリットがあります。</p>



<p class="wp-block-paragraph">そこで今回の記事では、Ranorexをバージョン管理ツールと連携させるメリットと、運用する際の注意点、Subversionを例にした具体的な運用イメージについてご紹介したいと思います。</p>



<h3 class="wp-block-heading"><strong>前提：Ranorexのテスト資産の構成</strong></h3>



<p class="wp-block-paragraph">Ranorex Studioで作成したテストは、テスト新規作成時の設定画面で指定した場所に保存されます。初期設定は、<strong>C:\Users\&lt;ユーザー名&gt;\Documents\Ranorex\RanorexStudio Projects</strong> のフォルダが指定されています。</p>



<p class="wp-block-paragraph">テスト資産(Ranorexプロジェクト)は以下のように、Microsoft Visual Studio 2008/2010 プロジェクトをベースとしたファイル形式で構成されています。</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="358" height="508" src="https://ranorex.techmatrix.jp/wp-content/uploads/project_structure.png" alt="" class="wp-image-19661" style="width:304px;height:431px" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/project_structure.png 358w, https://ranorex.techmatrix.jp/wp-content/uploads/project_structure-211x300.png 211w" sizes="(max-width: 358px) 100vw, 358px" /></figure>
</div>


<p class="wp-block-paragraph"><br>バージョン管理ツールを使用する場合も、一般的なVisual Studioによる開発で使用するケースと同じく、これらのプロジェクト一式をバージョン管理リポジトリに追加し、変更が発生したファイルに対して都度コミットをしていくようなイメージとなります。</p>



<h3 class="wp-block-heading"><strong>Ranorexをバージョン管理ツールと連携させるメリット</strong></h3>



<h4 class="wp-block-heading"><strong>テスト資産の管理が楽になる</strong></h4>



<p class="wp-block-paragraph">これは、アプリケーション開発におけるコードやドキュメントの管理の際のメリットと同じですが、ファイルで管理していると最新版がどれかわからなくなったり、前回どこを変えたかがわからず前のバージョンに戻せないといった事象が発生しやすいです。バージョン管理ツールを使うことで、これらを解決できます。</p>



<h4 class="wp-block-heading"><strong>複数人での開発に適している</strong></h4>



<p class="wp-block-paragraph">これも一般的なバージョン管理ツールを使うメリットとして挙げられるものですが、複数人で開発する場合に、各自のローカルにファイルをダウンロードできるため、同時並行で開発をおこなえます。同一ファイルに対する変更が競合（コンフリクト）した場合でも、バージョン管理ツールで解決できます。</p>



<h4 class="wp-block-heading"><strong>CIツールと連携した際、コミットなどの操作をテストの自動実行のトリガーとして利用できる</strong></h4>



<p class="wp-block-paragraph">Ranorex + バージョン管理ツール + CIツール(Jenkinsなど) を連携することで、Ranorexのファイルがコミットされたタイミングで、Ranorexのテスト資産を実行するといった使い方ができます。Ranorex + CIツールだけの連携の場合は、Ranorexのシナリオに修正が入った場合は手動でファイルの差し替えが必要になりますが、バージョン管理ツールを加えることで、自動で変更を反映して実行する処理を組むこともできるようになります。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ui-ranorex wp-block-embed-ui-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="XtWpNJBukv"><a href="https://ranorex.techmatrix.jp/blog/2019/08/09/integrating-ranorex-automation-in-jenkins-continuous-integration-process/">Jenkins への自動化テストの統合</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="&#8220;Jenkins への自動化テストの統合&#8221; &#8212; UIテスト自動化ツール Ranorex" src="https://ranorex.techmatrix.jp/blog/2019/08/09/integrating-ranorex-automation-in-jenkins-continuous-integration-process/embed/#?secret=SeGrmMRkaP#?secret=XtWpNJBukv" data-secret="XtWpNJBukv" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong>運用時の注意点</strong></h3>



<p class="wp-block-paragraph">開発でGitやSubversionなどのツールを使い慣れている方に、特にご注意いただきたい点として、競合(コンフリクト)発生時の対応方法が挙げられます。</p>



<p class="wp-block-paragraph">通常のソースコードによる開発であれば、コンフリクトは自身が編集したファイルに発生するものですが、Ranorexは主にGUI設定によってシナリオの編集をおこなうことから、ユーザーが直接触っていないファイルにも変更が入る場合があります。例えば、レコーディングでアクションを追加した際には、以下の複数のファイルが裏で変更されています。</p>



<ul class="wp-block-list">
<li>レコーディングモジュール(*.rxrec)</li>



<li>レコーディングモジュールの自動生成ファイル(*.cs)</li>



<li>リポジトリ(*.rxrep)</li>
</ul>



<p class="wp-block-paragraph">したがって通常のコードによるアプリ開発よりも競合の発生率が高く、マージ作業の難易度も高いといえます。また完全に自動生成のファイル(&lt;レコーディングモジュール名&gt;.cs 等)については、ユーザーによる直接編集が反映されない場合や、ファイル破損を引き起こす可能性があるため、コードベースでのマージが推奨されておりません。</p>



<p class="wp-block-paragraph">これらの理由から、特に複数人で開発をする際はできるだけ競合そのものが発生しづらい運用とすることを推奨しております。</p>



<p class="wp-block-paragraph">運用例として、プロジェクトを担当者ごとに分け、基本的に担当者は自分のプロジェクト内のものを編集するようにすることで、レコーディングモジュールやリポジトリ、.csprojといったファイルに競合が発生しづらくなります。</p>



<p class="wp-block-paragraph">以下の例では、担当者A・B・Cでプロジェクトを分け、各自で作成したレコーディングモジュールを使って担当者Aのテストスイートを構成しています。</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="933" height="851" src="https://ranorex.techmatrix.jp/wp-content/uploads/プロジェクト構成例.png" alt="" class="wp-image-19663" style="width:735px;height:670px" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/プロジェクト構成例.png 933w, https://ranorex.techmatrix.jp/wp-content/uploads/プロジェクト構成例-300x274.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/プロジェクト構成例-768x701.png 768w" sizes="(max-width: 933px) 100vw, 933px" /></figure>
</div>


<p class="wp-block-paragraph">テストスイートをはじめとした一部のxml形式のファイルについては、内蔵される Ranorex Magic Mergerというツールを使って、競合の解決をおこなうことができますので、上記の形で複数の担当者が同じテストスイートを同時に編集しても問題ありません。</p>



<h3 class="wp-block-heading"><strong>Subversion 連携</strong></h3>



<p class="wp-block-paragraph">ここではSubversionを例に、連携の手順をご説明します。Gitを使った連携については<strong><a href="https://ranorex.techmatrix.jp/blog/2022/08/05/git_test-managerment/" title="">こちらの記事</a></strong>をご覧ください。</p>



<h4 class="wp-block-heading"><strong>・Subversion と Ranorex の連携手順</strong></h4>



<p class="wp-block-paragraph"><strong><a href="https://support2.ranorex.com/ja/help/latest/interfaces-connectivity/source-control-revision-control/subversion/" title="">ユーザーガイド</a></strong>に記載の手順にて、Ranorex Studio上からソリューションをSubversionのリポジトリに追加したり、逆にリポジトリからソリューションをチェックアウトすることができます。TortoiseSVNの機能を使って、エクスプローラー上からリポジトリ追加/チェックアウトをおこなうことも可能です。</p>



<h4 class="wp-block-heading"><strong>・管理対象外とすべきファイル</strong></h4>



<p class="wp-block-paragraph">Subversion連携の場合、追加したソリューション配下のファイルはすべてリポジトリに追加されます。以下のファイルは、テスト実行に影響がなく、かつコンフリクトが発生しやすいファイルのため、管理対象外にすることをおすすめいたします。</p>



<ul class="wp-block-list">
<li>*.rximg</li>



<li>レポートファイルのショートカット</li>



<li>Debug/Releaseフォルダー配下のファイル</li>



<li>Reportsフォルダー配下のファイル</li>
</ul>



<p class="wp-block-paragraph">各ファイルについて詳しくは、<a href="https://ranorex.techmatrix.jp/blog/2022/08/05/git_test-managerment/" target="_blank" rel="noopener" title=""><strong>こちら</strong></a>のページの「管理対象外のデータファイル」をご参照ください。</p>



<h4 class="wp-block-heading"><strong>・Ranorex Magic Merger</strong></h4>



<p class="wp-block-paragraph">以下のファイルで競合が発生した場合、Ranorexで提供されているマージツールを使用して競合を解決することができます。</p>



<ul class="wp-block-list">
<li>Ranorex テスト スイート ファイル（.rxtst）</li>



<li>Ranorex リポジトリ ファイル&nbsp;（.rxrep）</li>



<li>プロジェクト ファイル（.csproj または、.vbproj）</li>
</ul>



<p class="wp-block-paragraph"><strong>【設定】</strong><br>エクスプローラーでファイルを右クリック &#8211; [TortoiseSVN] &#8211; [設定]を開き、[<strong>外部プログラム] &#8211; [マージツール] &#8211;  [高度な設定]</strong>&nbsp;から、上記3種類のファイルタイプ(.rxtst/.rxrep/.csprojまたは.vbproj)を追加します。コマンドとして以下を指定します。</p>



<pre class="wp-block-code has-white-color has-black-background-color has-text-color has-background"><code>C:\Program Files (x86)\Ranorex\Studio\Bin\Ranorex.MagicMerger.exe -base:%base -mine:%mine -theirs:%theirs -output:%merged</code></pre>



<p class="wp-block-paragraph"><strong>【使い方】</strong></p>



<p class="wp-block-paragraph">競合が発生しているファイルを右クリック &#8211; [競合の解決]をクリックすると、Ranorex Magic Mergerが起動します。競合の修正が完了したら、対象のファイルを右クリック &#8211; [競合を解決済みとしてマークする]をクリックすると、コミット・更新が可能となります。</p>



<h3 class="wp-block-heading"><strong>まとめ</strong></h3>



<p class="wp-block-paragraph">今回は、Ranorexとバージョン管理ツールの連携について説明してきました。基本的な操作についてはアプリケーション開発などの現場と同じような使い方ができますので、使い慣れているツールでぜひお試しください。</p><p>The post <a href="https://ranorex.techmatrix.jp/blog/2023/03/03/vcs_integration_svn/">テスト自動化シナリオのバージョン管理</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Ranorex と Jira 連携について</title>
		<link>https://ranorex.techmatrix.jp/blog/2022/11/18/jira-integration/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Fri, 18 Nov 2022 00:00:00 +0000</pubDate>
				<category><![CDATA[ツール連携]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=18363</guid>

					<description><![CDATA[<p>Ranorex は、課題管理ツールである Jira と簡単に連携できます。Jira は、チーム全体のタスクや計画を共有して、タスク管理や工数管理、進捗管理、スケジュール管理などを行い、プロジェクト全体を管理できます。 R [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/11/18/jira-integration/">Ranorex と Jira 連携について</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img loading="lazy" decoding="async" width="1024" height="585" src="https://ranorex.techmatrix.jp/wp-content/uploads/20221118_チームにおける成功への道の期日時間管理-1024x585.png" class="attachment-large size-large wp-post-image" alt="" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20221118_チームにおける成功への道の期日時間管理-1024x585.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/20221118_チームにおける成功への道の期日時間管理-300x171.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20221118_チームにおける成功への道の期日時間管理-768x439.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/20221118_チームにおける成功への道の期日時間管理-1536x878.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/20221118_チームにおける成功への道の期日時間管理-2048x1170.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></div>
<p class="wp-block-paragraph">Ranorex は、課題管理ツールである Jira と簡単に連携できます。Jira は、チーム全体のタスクや計画を共有して、タスク管理や工数管理、進捗管理、スケジュール管理などを行い、プロジェクト全体を管理できます。</p>



<p class="wp-block-paragraph">Ranorex と Jira を連携することで、例えば、Ranorex のテスト結果をもとに、失敗したテスト項目などを自動的に課題登録することができます。今回は、課題管理を自動登録する方法についてご紹介します。※テスト実行後に手動で課題を登録することも可能です。</p>



<h3 class="wp-block-heading">Jira 連携のセットアップ</h3>



<p class="wp-block-paragraph">Ranorex Studio の Jira ウィザードを使用して、Jira 連携のセットアップをおこないます。</p>



<ol class="wp-block-list">
<li>Ranorex Studio でソリューションを開き、<strong>ツール</strong> &gt;<strong> Jira 連携</strong> &gt; <strong>Jira ウィザードの開始</strong>&nbsp;をクリックします。</li>
</ol>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-7.png" alt="" class="wp-image-18370" width="474" height="271" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-7.png 598w, https://ranorex.techmatrix.jp/wp-content/uploads/image-7-300x172.png 300w" sizes="(max-width: 474px) 100vw, 474px" /></figure>



<p class="wp-block-paragraph">2. Jira への接続画面が表示されます。認証情報を入力し、<strong>サインイン</strong>&nbsp;をクリックします。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-9.png" alt="" class="wp-image-18372" width="615" height="387" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-9.png 681w, https://ranorex.techmatrix.jp/wp-content/uploads/image-9-300x189.png 300w" sizes="(max-width: 615px) 100vw, 615px" /></figure>



<p class="wp-block-paragraph">3. サインインに成功したら、<strong>続行</strong>&nbsp;をクリックします。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-10.png" alt="" class="wp-image-18375" width="620" height="435" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-10.png 682w, https://ranorex.techmatrix.jp/wp-content/uploads/image-10-300x210.png 300w" sizes="(max-width: 620px) 100vw, 620px" /></figure>



<p class="wp-block-paragraph">4. ドロップダウンメニューから、ソリューションとリンクしたい Jira プロジェクトを選択し、<strong>続行</strong>&nbsp;をクリックします。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-11.png" alt="" class="wp-image-18378" width="624" height="290" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-11.png 682w, https://ranorex.techmatrix.jp/wp-content/uploads/image-11-300x139.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p class="wp-block-paragraph">5. 課題の手動処理は、今回は無効化し、<strong>続行</strong> をクリックします。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-12.png" alt="" class="wp-image-18384" width="624" height="410" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-12.png 681w, https://ranorex.techmatrix.jp/wp-content/uploads/image-12-300x197.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></figure>



<p class="wp-block-paragraph">6.  <strong>自動処理の有効化</strong> を有効化にし、<strong>課題タイプ</strong>、<em>オープン ステータス</em>、<strong>完了ステータス</strong> の設定をしていきます。<br>　  ここでは、課題タイプ：<strong>バグ</strong>、オープン ステータス：<strong>To Do</strong>、完了ステータス：<strong>完了</strong> にします。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-17.png" alt="" class="wp-image-18397" width="628" height="501" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-17.png 792w, https://ranorex.techmatrix.jp/wp-content/uploads/image-17-300x239.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-17-768x613.png 768w" sizes="(max-width: 628px) 100vw, 628px" /></figure>



<p class="wp-block-paragraph">7. Jira 連携の設定画面にて、課題の自動処理 をクリックし、<strong>必須フィールド </strong>を入力します。<br>※<strong>報告者名</strong> (Jira に登録されているユーザー名) の記入を忘れないようにお気を付けください。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-15-1024x617.png" alt="" class="wp-image-18393" width="627" height="378" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-15-1024x617.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/image-15-300x181.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-15-768x463.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/image-15.png 1054w" sizes="(max-width: 627px) 100vw, 627px" /></figure>



<p class="wp-block-paragraph">その他のオプション設定もできます。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-16.png" alt="" class="wp-image-18395" width="631" height="326" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-16.png 693w, https://ranorex.techmatrix.jp/wp-content/uploads/image-16-300x155.png 300w" sizes="(max-width: 631px) 100vw, 631px" /></figure>



<h3 class="wp-block-heading">テスト実行</h3>



<p class="wp-block-paragraph">1. Ranorex Studio にて、テストスイートを開き、<strong>RUN </strong>ボタンでテスト実行します。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-18-1024x498.png" alt="" class="wp-image-18418" width="639" height="311" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-18-1024x498.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/image-18-300x146.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-18-768x374.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/image-18.png 1050w" sizes="(max-width: 639px) 100vw, 639px" /></figure>



<p class="wp-block-paragraph">2. テスト実行後に、Ranorex のテスト結果レポートを確認します。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-20-783x1024.png" alt="" class="wp-image-18423" width="655" height="856" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-20-783x1024.png 783w, https://ranorex.techmatrix.jp/wp-content/uploads/image-20-229x300.png 229w, https://ranorex.techmatrix.jp/wp-content/uploads/image-20-768x1004.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/image-20.png 794w" sizes="(max-width: 655px) 100vw, 655px" /></figure>



<p class="wp-block-paragraph">上記のように、テストが失敗すると、Jira に自動的に課題登録されます。一方で、テストが成功した場合には、課題登録はされません。</p>



<h3 class="wp-block-heading">Jira 課題登録の確認</h3>



<p class="wp-block-paragraph">Jira のサイトにアクセスし、失敗したテストの課題登録がされているかを確認します。</p>



<p class="wp-block-paragraph">1. 対象のプロジェクトを開き、オープンの課題を参照すると、失敗したテストケースが課題登録されているのが確認できます。<br>　 タイプ：バグ、ステータス：TO DO</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-22-1024x350.png" alt="" class="wp-image-18435" width="797" height="273" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-22-1024x350.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/image-22-300x103.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-22-768x262.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/image-22.png 1396w" sizes="(max-width: 797px) 100vw, 797px" /></figure>



<p class="wp-block-paragraph">登録された課題には、テスト結果も表示されるため、Jira 上で、修正すべき点を確認できます。</p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-23.png" alt="" class="wp-image-18439" width="776" height="676" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-23.png 925w, https://ranorex.techmatrix.jp/wp-content/uploads/image-23-300x261.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-23-768x668.png 768w" sizes="(max-width: 776px) 100vw, 776px" /></figure>



<h3 class="wp-block-heading">Jira 課題完了</h3>



<p class="wp-block-paragraph">アプリの改修やテストシナリオの修正などの後に、課題登録されたテストを再実行して、成功になると、課題のステータスは完了になります。</p>



<p class="wp-block-paragraph"><strong>テストケース成功</strong></p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-26-1024x594.png" alt="" class="wp-image-18446" width="676" height="392" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/image-26-1024x594.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/image-26-300x174.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/image-26-768x446.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/image-26.png 1475w" sizes="(max-width: 676px) 100vw, 676px" /></figure>



<p class="wp-block-paragraph"><strong>Jira 課題完了</strong></p>



<p class="wp-block-paragraph">ステータスが完了になり、オープンの課題から解決済みの課題に分類されます。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/image-24-1024x305.png" alt="" class="wp-image-18443" width="805" height="242"/></figure>



<h3 class="wp-block-heading">まとめ</h3>



<p class="wp-block-paragraph">Ranorex と Jira を連携することで、自動的に課題管理できます。また、CI ツールで Ranorex のテスト実行を自動化することで、課題管理までの一連の操作を自動化できます。課題管理の工数を削減できますので、ぜひ、Ranorex と連携してご利用ください。</p><p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/11/18/jira-integration/">Ranorex と Jira 連携について</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MSBuild を使用したコマンドラインでのソリューションのビルド方法</title>
		<link>https://ranorex.techmatrix.jp/blog/2022/09/02/msbuild/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Fri, 02 Sep 2022 00:00:00 +0000</pubDate>
				<category><![CDATA[ツール連携]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=17212</guid>

					<description><![CDATA[<p>Ranorex は、Ranorex Studio で作成したソリューションを MSBuild でビルドし、生成されたテスト実行ファイル(.exe)を実行することで、テストをおこないます。Ranorex Studio では [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/09/02/msbuild/">MSBuild を使用したコマンドラインでのソリューションのビルド方法</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img loading="lazy" decoding="async" width="852" height="627" src="https://ranorex.techmatrix.jp/wp-content/uploads/20220831_フラットベクターイラスト、新しいアイデアを見つけるためのチームワーク.png" class="attachment-large size-large wp-post-image" alt="" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20220831_フラットベクターイラスト、新しいアイデアを見つけるためのチームワーク.png 852w, https://ranorex.techmatrix.jp/wp-content/uploads/20220831_フラットベクターイラスト、新しいアイデアを見つけるためのチームワーク-300x221.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20220831_フラットベクターイラスト、新しいアイデアを見つけるためのチームワーク-768x565.png 768w" sizes="(max-width: 852px) 100vw, 852px" /></div>
<p class="wp-block-paragraph">Ranorex は、Ranorex Studio で作成したソリューションを MSBuild でビルドし、生成されたテスト実行ファイル(.exe)を実行することで、テストをおこないます。Ranorex Studio では、テスト実行のタイミングで内部的にビルドされますが、コマンドラインでもビルドができます。</p>



<p class="wp-block-paragraph">今回は、コマンドラインでの Ranorex ソリューションのビルドをおこなう活用場面と方法についてご紹介します。</p>



<h3 class="wp-block-heading"><strong>コマンドラインでのソリューションのビルドによる活用場面</strong></h3>



<p class="wp-block-paragraph"><strong>Jenkins などの CI ツールを使用して、ソリューションのチェックアウトからテストレポートの生成までの一連の流れを自動化する。</strong></p>



<p class="wp-block-paragraph">CIツールを使用することで、バージョン管理システムへのソースコードのコミットをトリガーに、テスト対象アプリと Ranorex のソリューションのチェックアウトからテストレポートの生成までを自動化できます。CI環境にて、チェックアウトされたソリューションをビルドする際に、MSBuildを使用します。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="301" src="https://ranorex.techmatrix.jp/wp-content/uploads/CI-1024x301.png" alt="" class="wp-image-17254" style="width:813px;height:239px" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/CI-1024x301.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/CI-300x88.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/CI-768x225.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/CI-1536x451.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/CI-2048x601.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">Jenkins の場合は、MSBuild のプラグインがあるため、より簡単に設定がおこなえます。Jenkins による CI の詳細手順につきましては、<strong><a href="https://ranorex.techmatrix.jp/blog/2019/08/09/integrating-ranorex-automation-in-jenkins-continuous-integration-process/">こちら</a></strong>をご確認ください。</p>



<p class="wp-block-paragraph"><strong>補足：Ranorex のコマンドライン実行</strong></p>



<p class="wp-block-paragraph">CIツールにて、Ranorex のテスト実行自体を自動化する場合は、テスト実行ファイル（.exe）を実行するコマンドラインを用意する必要があります。</p>



<p class="wp-block-paragraph">具体的なテスト実行のコマンドについては、<strong><a href="https://support2.ranorex.com/ja/help/latest/ranorex-studio-expert/runtime-and-remote-execution/command-line-execution/" title="">こちら</a></strong>をご確認ください。</p>



<h3 class="wp-block-heading"><strong>MSBuild を使用したコマンドラインでのビルド方法</strong></h3>



<p class="wp-block-paragraph">Ranorex のソリューションをビルドする環境に、MSBuild がインストールされているかを確認します。環境にない場合は、Visual Studio や .NET SDK などをインストールすることで、MSBuild をインストールできます。なお、環境変数に、MSBuild のパスを通しておくことで、フルパスを使用せずにプログラム名のみで実行できます。</p>



<p class="wp-block-paragraph">Visual Studio 2022 (ブログ投稿時点) をご利用の場合、MSBuild のパスは以下になります。<br><strong>C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</strong></p>



<h3 class="wp-block-heading"><strong>Ranorex ソリューションのビルドコマンド（MSBuild のパスを通した場合）</strong></h3>



<pre class="wp-block-code"><code>&gt;<strong> MSBuild.exe &lt;ソリューション名.sln のファイルパス</strong>&gt;</code></pre>



<p class="wp-block-paragraph">Ranorex のソリューションファイルは、以下のパスになります。<br><strong>C:\Users\ユーザー名\Documents\Ranorex\RanorexStudio Projects\ソリューション名\ソリューション名.sln</strong></p>



<p class="wp-block-paragraph">ソリューションをビルドすると、テスト実行に必要なファイルが以下のパスに生成されます。<br>※&lt;プロジェクト名.exe&gt; を実行することでテスト実行ができます。<br><strong>C:\Users\ユーザー名\Documents\Ranorex\RanorexStudio Projects\ビルド\ビルド\bin\Debug</strong></p>



<p class="wp-block-paragraph"><strong>注意点1：</strong><br>MSBuild のバージョンは、 Ranorex で使用している .NET Framework のバージョンと合わせてください。<br>Ranorex で使用している .NET Framework のバージョンは、「<strong>ヘルプ</strong>」&gt; 「<strong>Ranorex Studio について</strong>」にて、「<strong>.NET Runtime Version</strong>」でご確認いただけます。</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="414" src="https://ranorex.techmatrix.jp/wp-content/uploads/ブログ_NETFramework-1024x414.png" alt="" class="wp-image-17235" style="width:490px;height:198px" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/ブログ_NETFramework-1024x414.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/ブログ_NETFramework-300x121.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/ブログ_NETFramework-768x311.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/ブログ_NETFramework-1536x622.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/ブログ_NETFramework.png 2021w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h3 class="wp-block-heading"><strong>まとめ</strong></h3>



<p class="wp-block-paragraph">Ranorex Studio がインストールされていない環境で、ソリューションのビルドを行う場合や、CIツールなどを使用して、Ranorex ソリューションのビルド自体を自動化する場合には、MSBuild を使用して、コマンドラインでビルドすることでご対応いただけます。このような環境でテスト自動化をされる方は、MSBuild を使用してソリューションをビルドください。</p><p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/09/02/msbuild/">MSBuild を使用したコマンドラインでのソリューションのビルド方法</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Ranorex：Gitによるテスト管理</title>
		<link>https://ranorex.techmatrix.jp/blog/2022/08/05/git_test-managerment/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Fri, 05 Aug 2022 02:00:42 +0000</pubDate>
				<category><![CDATA[ツール連携]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=16875</guid>

					<description><![CDATA[<p>UIテスト自動化ツールで作成したテスト資産をどのように管理したら良いのか迷うことがあります。 UIテスト自動化ツールであるRanorexは、GitやSVN（Subversion）、TFVC（Team Foundation [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/08/05/git_test-managerment/">Ranorex：Gitによるテスト管理</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img loading="lazy" decoding="async" width="711" height="491" src="https://ranorex.techmatrix.jp/wp-content/uploads/20220725_選択したドキュメント管理コンセプト.jpg" class="attachment-large size-large wp-post-image" alt="" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20220725_選択したドキュメント管理コンセプト.jpg 711w, https://ranorex.techmatrix.jp/wp-content/uploads/20220725_選択したドキュメント管理コンセプト-300x207.jpg 300w" sizes="(max-width: 711px) 100vw, 711px" /></div>
<p class="wp-block-paragraph">UIテスト自動化ツールで作成したテスト資産をどのように管理したら良いのか迷うことがあります。</p>



<p class="wp-block-paragraph">UIテスト自動化ツールであるRanorexは、GitやSVN（Subversion）、TFVC（Team Foundation Version Control）との連携が可能です。<br>Gitでは、Ranorex Studioがインストールされている環境に必要なツール（<strong><a href="https://git-scm.com/download/win" target="_blank" rel="noreferrer noopener">Git for Windows</a></strong>、<strong><a href="https://tortoisegit.org/download" target="_blank" rel="noreferrer noopener">TortoiseGit</a></strong>）をインストールすることで連携を可能にします。<br>今回は、Gitを使用したテスト管理について紹介いたします。</p>



<p class="wp-block-paragraph"><em>※本記事では、Gitの基本操作については説明いたしません。Gitの公式サイトなどをご確認ください。</em></p>



<h3 class="wp-block-heading"><strong>コミット（commit）とチェックアウト（checkout）</strong></h3>



<p class="wp-block-paragraph">Ranorex StudioとGitを連携することで、Gitへのコミット時に管理対象となるファイルをRanorex Studioが自動で選択します。このため、コミットするファイルをユーザー自身が選択する必要がありません。また、チェックアウトにおいては、Ranorex Studioからチェックアウトのメニューを選択することで、ローカル環境に対象のRanorexソリューションがクローンされ、Ranorex Studioで開かれます。</p>



<p class="wp-block-paragraph"><em>※RanorexとGitの連携によるコミット、およびチェックアウトや、<em>フェッチ、プル、プッシュ</em>などの各操作の詳細については、<strong><a href="https://support2.ranorex.com/ja/help/latest/interfaces-connectivity/source-control-revision-control/git/" target="_blank" rel="noopener" title="">ユーザーガイド</a></strong>をご参照ください。</em></p>



<p class="wp-block-paragraph"><em>※&#8221;.sln&#8221;ファイルについて</em><br>”.sln”ファイルは、Ranorexソリューションフォルダー配下に生成され、Gitへのコミット時に管理対象に含まれないファイルとなります。</p>



<pre class="wp-block-code"><code>C:\Users\{ユーザー名}\Documents\Ranorex\RanorexStudio Projects\{ソリューション名}</code></pre>



<p class="wp-block-paragraph">Rranorex Studioを使用せずに、Ranorexソリューションをビルドし、テスト実行モジュール（.exe）を生成される場合は管理対象ファイルに含めてください。<br>たとえば、<a href="https://ranorex.techmatrix.jp/blog/2019/08/09/integrating-ranorex-automation-in-jenkins-continuous-integration-process/" target="_blank" rel="noopener"><strong>CI環境で自動化</strong></a>する場合に、GitからチェックアウトしたRanorexソリューションをビルドし、テスト実行モジュール（.exe）を生成したい場合などに必要となります。</p>



<h3 class="wp-block-heading"><strong>コンフリクト（conflict）</strong></h3>



<p class="wp-block-paragraph">Ranorexで提供されているマージツール（<strong><a href="https://support2.ranorex.com/ja/help/latest/interfaces-connectivity/source-control-revision-control/ranorex-magic-merger/" target="_blank" rel="noopener" title="">Ranorex Magic Merger</a></strong>）を使用することで、RanorexソリューションのXML形式ファイルを自動マージするとともに、自動でマージできない場合においては、マニュアルよるコンフリクトの解決を行うことができます。</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="540" src="https://ranorex.techmatrix.jp/wp-content/uploads/E4040-0000010-1024x540.png" alt="" class="wp-image-16930" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/E4040-0000010-1024x540.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/E4040-0000010-300x158.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/E4040-0000010-768x405.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/E4040-0000010.png 1426w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p class="wp-block-paragraph"><em>※Ranorex Magic Mergerでは、以下のファイルの自動マージに対応しています。</em></p>



<ul class="wp-block-list">
<li>Ranorex テスト スイート ファイル（.rxtst）</li>



<li>Ranorex リポジトリ ファイル （.rxrep）</li>



<li>プロジェクト ファイル（.csproj または、.vbproj）</li>
</ul>



<h3 class="wp-block-heading"><strong>管理対象外のデータファイル</strong></h3>



<p class="wp-block-paragraph">管理対象外のファイルとして、以下のファイルがあります。</p>



<p class="wp-block-paragraph"><em>※&#8221;.rximg&#8221;ファイル以外は、Ranorex StudioとGitの連携時におけるチェックアウト時には管理対象ファイルに含まれません。</em></p>



<h6 class="wp-block-heading"><strong>&#8220;.rximg&#8221;ファイル</strong></h6>



<p class="wp-block-paragraph">このファイルは、Ranorexソリューションフォルダーにあるプロジェクトフォルダーに生成されます。</p>



<pre class="wp-block-code"><code>C:\Users\{ユーザー名}\Documents\Ranorex\RanorexStudio Projects\{ソリューション名}\{プロジェクト名}</code></pre>



<p class="wp-block-paragraph">このファイルは、リポジトリのスクリーンショット（リポジトリにて各オブジェクトを選択した時に右側に表示されるスクリーンショット）を保存するためのバイナリファイルです。１つのRanorexソリューションを複数人で編集する場合にコンフリクトが発生しやすいファイルとなります。また、テスト実行において影響がないため、テストの作成などで個々のオブジェクトを画像で確認する必要がない場合には管理対象から外しても問題のないファイルになります。</p>



<h6 class="wp-block-heading"><strong>レポートファイル（ショートカット）</strong></h6>



<p class="wp-block-paragraph">このファイルは、プロジェクトフォルダー配下の<strong>Reports</strong>フォルダーに生成されます。</p>



<pre class="wp-block-code"><code>C:\Users\{ユーザー名}\Documents\Ranorex\RanorexStudio Projects\{ソリューション名}\{プロジェクト名}\Reports</code></pre>



<p class="wp-block-paragraph">このファイルは、テスト実行時に生成されるレポートファイルのショートカットになります。テスト実行において影響のないファイルとなるため、管理対象から外しても問題のないファイルになります。</p>



<p class="wp-block-paragraph">このファイルはテスト実行の度に生成されるため、生成されないようにしたい場合は、以下の作業を行ってください。</p>



<ol class="wp-block-list">
<li>Ranorex Studioにて、「ツール」メニューから「オプション」を選択します。</li>



<li>表示されるオプション画面にて、”全般”－&#8221;Ranorex レポート ビューアー&#8221;を開きます。</li>



<li>Ranorex レポート ビューアーの設定画面にて、&#8221;レポート モニター&#8221;にある、&#8221;プロジェクト レポート フォルダーにレポート ファイルのリンクを自動作成&#8221;のチェックボックスを無効にします。</li>



<li>「OK」ボタンをクリックし、オプション画面を閉じます。</li>
</ol>



<h6 class="wp-block-heading"><strong>Debug/Releaseフォルダー配下のファイル</strong></h6>



<p class="wp-block-paragraph">このフォルダー配下のファイルは、Ranorexソリューションフォルダーにあるプロジェクトフォルダーに生成されます。</p>



<pre class="wp-block-code"><code>C:\Users\{ユーザー名}\Documents\Ranorex\RanorexStudio Projects\{ソリューション名}\{プロジェクト名}</code></pre>



<p class="wp-block-paragraph">このフォルダーは、Ranorex Studioのテスト実行時において、Ranorexソリューションのビルド時に生成されるテスト実行用モジュール（.exe）が保存されるフォルダーになります。CI環境を使用した自動化などで、Ranorexソリューションを毎回、ビルドしてテスト実行用モジュールを生成される場合には不要となるため、管理対象から外しても問題のないファイルになります。</p>



<p class="wp-block-paragraph"><em>※Ranorexソリューションの対象プロジェクトの構成（Debug/Rlease）によって、Debug、またはRleaseフォルダーの出力先が変わります。（デフォルト時は、Debugフォルダーに出力されます）</em></p>



<p class="wp-block-paragraph"><strong>Reportsフォルダー配下のファイル</strong></p>



<p class="wp-block-paragraph">このフォルダー配下のファイルは、プロジェクトフォルダー配下にあるDebug/Releaseフォルダーに生成されます。</p>



<pre class="wp-block-code"><code>C:\Users\{ユーザー名}\Documents\Ranorex\RanorexStudio Projects\{ソリューション名}\{プロジェクト名}\（Debug/Release）</code></pre>



<p class="wp-block-paragraph">このフォルダーは、Ranorex Studioのテスト実行時に生成されるテスト結果レポートが保存されるフォルダーになります。テスト実行において影響がないため、管理対象から外しても問題のないファイルになります。</p>



<h3 class="wp-block-heading"><strong>まとめ</strong></h3>



<p class="wp-block-paragraph">UI/E2Eで作成したテストも、開発コードやドキュメント類（仕様書、設計書）などと同じ開発資産となります。そのため、これらの開発資産と一緒に、Gitなどの構成管理ツールにて管理されることをお勧めします。</p><p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/08/05/git_test-managerment/">Ranorex：Gitによるテスト管理</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Ranorex 活用術まとめ</title>
		<link>https://ranorex.techmatrix.jp/blog/2022/06/03/matome/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Fri, 03 Jun 2022 02:00:00 +0000</pubDate>
				<category><![CDATA[Ranorex機能]]></category>
		<category><![CDATA[ツール連携]]></category>
		<category><![CDATA[ノウハウ]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=15968</guid>

					<description><![CDATA[<p>Ranorex の使い方や活用術に関するブログ記事をまとめました。このページでは、お客様からよくいただく問い合わせをもとに、エラーの解決策や便利なチップス、自動化ツール比較などを紹介しています。 以下のジャンル別に関連す [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/06/03/matome/">Ranorex 活用術まとめ</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">Ranorex の使い方や活用術に関するブログ記事をまとめました。このページでは、お客様からよくいただく問い合わせをもとに、エラーの解決策や便利なチップス、自動化ツール比較などを紹介しています。</p>



<p class="wp-block-paragraph">以下のジャンル別に関連する記事を掲載しています。目次のリンクをクリックすると、気になるセクションに直接アクセスできます。</p>



<div class="toc-001">
    <div>
        目次
        <label><input type="checkbox" checked=""></label>
    </div>
    <ol>
        <li><a href="#matome1">テスト自動化を始める前に</a></li>
        <li><a href="#matome2">Ranorexを初めて利用する方</a></li>
        <li><a href="#matome3">テストでエラーが発生したとき</a></li>
        <li><a href="#matome4">ロケーションパスの管理・メンテンナンス</a></li>
        <li><a href="#matome5">テストスクリプト作成の効率化</a></li>
        <li><a href="#matome6">作成したテストスクリプトの管理</a></li>
        <li><a href="#matome7">検証</a></li>
        <li><a href="#matome8">テスト実行</a></li>
        <li><a href="#matome9">レポート</a></li>
        <li><a href="#matome10">CI/CD連携</a></li>
        <li><a href="#matome11">ツール比較</a></li>
        <li><a href="#matome12">その他</a></li>
    </ol>
</div>



<h2 id="matome1" class="wp-block-heading h2-blog"><strong>テスト自動化を始める前に</strong></h2>



<p class="wp-block-paragraph">Ranorex を利用する前に、まずは、テスト自動化の進め方について学習しましょう。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="onm8cwTaSB"><a href="https://ranorex.techmatrix.jp/test_automation_news/">テスト自動化 ベストプラクティス</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“テスト自動化 ベストプラクティス” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/test_automation_news/embed/#?secret=EPDfyMfFZa#?secret=onm8cwTaSB" data-secret="onm8cwTaSB" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome2" class="wp-block-heading h2-blog"><strong>Ranorexを初めて利用する方</strong></h2>



<h3 class="wp-block-heading"><strong>Ranorex を始める際につまづきやすいポイント</strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="h1NdOKzewj"><a href="https://ranorex.techmatrix.jp/blog/2022/07/22/checkpoints_for_beginners/">Ranorex 初心者にチェックしてほしいポイント5選</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Ranorex 初心者にチェックしてほしいポイント5選” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/07/22/checkpoints_for_beginners/embed/#?secret=Qfc2nlOH2K#?secret=h1NdOKzewj" data-secret="h1NdOKzewj" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong>プロジェクト画面がうまく表示されない</strong>・<strong>ソリューションのビルドが失敗する</strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="wDvpbRENqs"><a href="https://ranorex.techmatrix.jp/blog/2026/08/14/buildtoolsforvisualstudio2022/">Visual Studio Build Tools 2022のインストール手順</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Visual Studio Build Tools 2022のインストール手順” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2026/08/14/buildtoolsforvisualstudio2022/embed/#?secret=p9FlvgauFi#?secret=wDvpbRENqs" data-secret="wDvpbRENqs" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong>Webアプリケーションでチェックすべきポイント</strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="aPMXxK6MhZ"><a href="https://ranorex.techmatrix.jp/blog/2023/03/17/checkpoints_for_webtest/">RanorexでWebアプリケーションをテストする際にチェックしてほしいポイント</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“RanorexでWebアプリケーションをテストする際にチェックしてほしいポイント” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2023/03/17/checkpoints_for_webtest/embed/#?secret=FGr5laN9c0#?secret=aPMXxK6MhZ" data-secret="aPMXxK6MhZ" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome3" class="wp-block-heading h2-blog"><strong>テストでエラーが発生したとき</strong></h2>



<h3 class="wp-block-heading"> <strong>よくあるエラー/警告メッセージ一覧(FAQ)</strong></h3>



<p class="wp-block-paragraph">テスト作成や実行時に発生したエラーの内容や解決方法は、以下のページに一覧でまとめています。<br>まずは、こちらのページをご確認ください。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="Hzm1Vrvp8t"><a href="https://ranorex.techmatrix.jp/ranorex-faq/error_warn/">FAQ &#8211; エラー・警告</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“FAQ – エラー・警告” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/ranorex-faq/error_warn/embed/#?secret=RKJjxfNbUH#?secret=Hzm1Vrvp8t" data-secret="Hzm1Vrvp8t" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong>テスト対象アプリごとのエラー・警告の対応方法</strong></h3>



<ul class="wp-block-list">
<li><strong>デスクトップ・Web・モバイル 共通</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="p2kxGo853n"><a href="https://ranorex.techmatrix.jp/blog/2021/12/17/error_analysis/">エラーメッセージが出力された場合の対応方法</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“エラーメッセージが出力された場合の対応方法” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2021/12/17/error_analysis/embed/#?secret=yFTDq111Eo#?secret=p2kxGo853n" data-secret="p2kxGo853n" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><strong>モバイル</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="Y9wCrdC2Z8"><a href="https://ranorex.techmatrix.jp/blog/2022/06/10/mobile_error_analysis/">エラーが発生した場合の対応方法 -モバイル編-</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“エラーが発生した場合の対応方法 -モバイル編-” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/06/10/mobile_error_analysis/embed/#?secret=fY3IoE4uRn#?secret=Y9wCrdC2Z8" data-secret="Y9wCrdC2Z8" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><strong>デスクトップ (WPFアプリケーション)</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="s5zcmsGQ91"><a href="https://ranorex.techmatrix.jp/blog/2023/04/28/wpf-plugin/">WPF アプリケーションのオブジェクト認識がうまくいかない時の対処法</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“WPF アプリケーションのオブジェクト認識がうまくいかない時の対処法” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2023/04/28/wpf-plugin/embed/#?secret=CszHwcxbiV#?secret=s5zcmsGQ91" data-secret="s5zcmsGQ91" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong>テスト実行中にエラーを素早く修正する方法</strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="6rOyeJcAml"><a href="https://ranorex.techmatrix.jp/blog/2021/12/03/maintenance-mode/">メンテナンスモードで素早くデバッグする方法</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“メンテナンスモードで素早くデバッグする方法” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2021/12/03/maintenance-mode/embed/#?secret=xFgMvmHOBX#?secret=6rOyeJcAml" data-secret="6rOyeJcAml" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome4" class="wp-block-heading anchor h2-blog"><strong>ロケーションパスの管理・メンテンナンス</strong></h2>



<h3 class="wp-block-heading"><strong><strong>レコーディング時にUI要素の認識ができない時の対応方法</strong></strong></h3>



<ul class="wp-block-list">
<li><strong>デスクトップアプリ</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="RXVvZXQ7QM"><a href="https://ranorex.techmatrix.jp/blog/2020/07/10/ranorex-v9-3gdi/">デスクトップアプリで認識しないオブジェクトの対応</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“デスクトップアプリで認識しないオブジェクトの対応” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2020/07/10/ranorex-v9-3gdi/embed/#?secret=cKyVrsgVIt#?secret=RXVvZXQ7QM" data-secret="RXVvZXQ7QM" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><strong>Webアプリのメッセージダイアログ</strong>(Window.alert()など)</li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="zskG5L7Zs2"><a href="https://ranorex.techmatrix.jp/blog/2022/02/04/popupwatcher/">E2Eテスト：予期せぬポップアップ画面の操作自動化</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“E2Eテスト：予期せぬポップアップ画面の操作自動化” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/02/04/popupwatcher/embed/#?secret=CTgVtHH8OD#?secret=zskG5L7Zs2" data-secret="zskG5L7Zs2" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>変更に強いロケーションパス(RanoreXPath)の作成</strong></strong></strong></h3>



<p class="wp-block-paragraph">アプリの改修などでレイアウト構造が変わると、ロケーションパスのメンテナンスが発生しやすくなります。テストを作成する前に、メンテナンスが発生しにくいロケーションパスの設計方法をご確認ください。</p>



<ul class="wp-block-list">
<li><strong>変更に強いRanoreXPathの設計方法</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="QqtwplWtMa"><a href="https://ranorex.techmatrix.jp/blog/2026/09/09/ranorexpath_generate/">変更に強いRanoreXPathの設計方法</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“変更に強いRanoreXPathの設計方法” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2026/09/09/ranorexpath_generate/embed/#?secret=Nr51sErOTq#?secret=QqtwplWtMa" data-secret="QqtwplWtMa" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<p class="wp-block-paragraph">テスト実行時にUI要素の認識に失敗したときに、堅牢性の高いロケーションパス(ロバストパス)を使用して再試行できます。これにより、UI要素の失敗を防げるケースがあります。</p>



<ul class="wp-block-list">
<li><strong>Self Healing機能</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="PnxmxW6kAX"><a href="https://ranorex.techmatrix.jp/blog/2021/08/20/v9-5_self-healing/">Ranorex v9.5の新機能（Self-Healing機能）</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Ranorex v9.5の新機能（Self-Healing機能）” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2021/08/20/v9-5_self-healing/embed/#?secret=iDMcj38oIz#?secret=PnxmxW6kAX" data-secret="PnxmxW6kAX" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<p class="wp-block-paragraph">以下のハンズオンセミナーや有償トレーニングで、RanoreXPathについて詳しく学習ができます。</p>



<ul style="background-color:#f3f3f3" class="wp-block-list has-background">
<li><a href="https://ranorex.techmatrix.jp/handson-intermediate-details/" title=""><strong>ハンズオンセミナー (中級)</strong></a><br>Self Healing機能を含め、変更に強いオブジェクトの作成について学ぶことができます。</li>



<li><strong><a href="https://ranorex.techmatrix.jp/training-ranorexpath/" title="">有償トレーニング (RanoreXPathの活用)</a></strong><br>オブジェクト認識エラーが出た時の具体的なメンテナンス方法について学ぶことができます。</li>
</ul>



<h2 id="matome5" class="wp-block-heading anchor h2-blog"><strong>テストスクリプト作成</strong></h2>



<h3 class="wp-block-heading"><strong><strong><strong>シナリオ作成</strong></strong></strong></h3>



<ul class="wp-block-list">
<li><strong>レコーディング時に使用できる便利機能</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="Mk1ct9BUmA"><a href="https://ranorex.techmatrix.jp/blog/2019/11/22/recorder-control-center/">Recorder control centerの活用</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Recorder control centerの活用” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2019/11/22/recorder-control-center/embed/#?secret=PpEvD2KUHw#?secret=Mk1ct9BUmA" data-secret="Mk1ct9BUmA" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>便利なアクション機能</strong></strong></strong></h3>



<ul class="wp-block-list">
<li><strong>アクションの待機</strong></li>



<li><strong>値の取得と設定</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="8VPqfHHM7l"><a href="https://ranorex.techmatrix.jp/blog/2017/07/26/actions-that-match-the-test-contents/">テスト内容に合ったアクションを使用する</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“テスト内容に合ったアクションを使用する” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2017/07/26/actions-that-match-the-test-contents/embed/#?secret=PcgdWEbBr6#?secret=8VPqfHHM7l" data-secret="8VPqfHHM7l" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>スクリーンショットの取得</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="cn4nbpBL1E"><a href="https://ranorex.techmatrix.jp/blog/2019/04/23/evidence-screenshots/">テストのエビデンスとしてスクリーンショットを取得する</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“テストのエビデンスとしてスクリーンショットを取得する” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2019/04/23/evidence-screenshots/embed/#?secret=UObcLCxWZT#?secret=cn4nbpBL1E" data-secret="cn4nbpBL1E" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>クロスブラウザーテスト</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="UtyA91qnqf"><a href="https://ranorex.techmatrix.jp/blog/2017/05/23/cross-browser-test-automation/">クロスブラウザーテストの自動化</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“クロスブラウザーテストの自動化” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2017/05/23/cross-browser-test-automation/embed/#?secret=MeC4Pp4Iq1#?secret=UtyA91qnqf" data-secret="UtyA91qnqf" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>条件分岐・<strong><strong><strong>ループ処理</strong></strong></strong></strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="lPlAoFH0aO"><a href="https://ranorex.techmatrix.jp/blog/2018/01/19/conditions-and-rules/">条件分岐</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“条件分岐” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2018/01/19/conditions-and-rules/embed/#?secret=oC1W8Y31vd#?secret=lPlAoFH0aO" data-secret="lPlAoFH0aO" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="xEU2ibMdtq"><a href="https://ranorex.techmatrix.jp/blog/2019/12/13/non-programming-loop-and-conditions/">コードを使用しないループ処理と条件分岐の実装</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“コードを使用しないループ処理と条件分岐の実装” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2019/12/13/non-programming-loop-and-conditions/embed/#?secret=OIvKtwRpjn#?secret=xEU2ibMdtq" data-secret="xEU2ibMdtq" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>オートメーションヘルパー</strong></strong></strong></h3>



<p class="wp-block-paragraph">Ranorexの標準アクションには用意されていない、コーディングが必要な機能を設定のみで簡単に利用できるライブラリーです。</p>



<ul class="wp-block-list">
<li><strong><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-expert/ranorex-automation-helpers/emailmodule/">テスト結果のメール送付</a></strong></li>



<li><strong><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-expert/ranorex-automation-helpers/popupwatcherlibrary/" title="">予期せぬポップアップの操作</a></strong></li>



<li><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-expert/ranorex-automation-helpers/systemlibrary/" title=""><strong>タイマーの開始と終了</strong></a></li>



<li><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-expert/ranorex-automation-helpers/filelibrary/" title=""><strong>ファイル</strong></a><strong><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-expert/ranorex-automation-helpers/filelibrary/" title="">検</a></strong><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-expert/ranorex-automation-helpers/filelibrary/" title=""><strong>証</strong></a></li>



<li><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-expert/ranorex-automation-helpers/dragndroplibrary/" title=""><strong>ドラッグ&amp;ドロップ</strong></a></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="Sur1jWwhcT"><a href="https://ranorex.techmatrix.jp/blog/2019/09/13/method-list-for-automation-helpers/">Automation Helpersによる提供モジュール/メソッド内容のご紹介</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Automation Helpersによる提供モジュール/メソッド内容のご紹介” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2019/09/13/method-list-for-automation-helpers/embed/#?secret=mIyu3QRAA9#?secret=Sur1jWwhcT" data-secret="Sur1jWwhcT" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong>予期せぬ</strong><strong style="font-weight: bold;">ポップアップ、ダイアログメッセージの操作</strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="dalAaRuGMI"><a href="https://ranorex.techmatrix.jp/blog/2022/02/04/popupwatcher/">E2Eテスト：予期せぬポップアップ画面の操作自動化</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“E2Eテスト：予期せぬポップアップ画面の操作自動化” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/02/04/popupwatcher/embed/#?secret=6YGNsWK3Ai#?secret=dalAaRuGMI" data-secret="dalAaRuGMI" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome6" class="wp-block-heading anchor h2-blog"><strong>作成したテストスクリプトの管理</strong></h2>



<h3 class="wp-block-heading"><strong><strong><strong>既存のテストシナリオを再利用/共通化する</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="Dpg1Gy1uvc"><a href="https://ranorex.techmatrix.jp/blog/2022/01/21/ranorex_reuse_assets/">作成したテスト資産の流用方法</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“作成したテスト資産の流用方法” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/01/21/ranorex_reuse_assets/embed/#?secret=sylM1tyn8N#?secret=Dpg1Gy1uvc" data-secret="Dpg1Gy1uvc" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>複数人でテストスクリプトを共有/管理する</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="RAYF1guqiu"><a href="https://ranorex.techmatrix.jp/blog/2023/03/03/vcs_integration_svn/">テスト自動化シナリオのバージョン管理</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“テスト自動化シナリオのバージョン管理” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2023/03/03/vcs_integration_svn/embed/#?secret=9J0uMDeTe1#?secret=RAYF1guqiu" data-secret="RAYF1guqiu" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>構成管理ツールとの連携</strong></strong></strong></h3>



<ul class="wp-block-list">
<li><a href="hhttps://support2.ranorex.com/ja/help/latest/interfaces-connectivity/source-control-revision-control/git/" title=""><strong>Git(ユーザーガイド)</strong></a></li>



<li><a href="https://support2.ranorex.com/ja/help/latest/interfaces-connectivity/source-control-revision-control/subversion/" title=""><strong>Subversion(ユーザーガイド)</strong></a></li>
</ul>



<h2 id="matome7" class="wp-block-heading anchor h2-blog"><strong>検証</strong></h2>



<h3 class="wp-block-heading"><strong><strong><strong>画像検証</strong></strong></strong></h3>



<ul class="wp-block-list">
<li><strong>イメージバリデーションの概要</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="8sVEqhYRvk"><a href="https://ranorex.techmatrix.jp/blog/2020/02/21/image-validation-summary/">イメージ バリデーション（概要）#1</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“イメージ バリデーション（概要）#1” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2020/02/21/image-validation-summary/embed/#?secret=pia8LKMEXU#?secret=8sVEqhYRvk" data-secret="8sVEqhYRvk" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><strong>イメージバリデーションの使い方</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="GM0FUpGOYx"><a href="https://ranorex.techmatrix.jp/blog/2020/02/28/image-validation-use/">イメージ バリデーション（使用）#2</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“イメージ バリデーション（使用）#2” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2020/02/28/image-validation-use/embed/#?secret=Xph9WTidCZ#?secret=GM0FUpGOYx" data-secret="GM0FUpGOYx" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><strong>イメージバリデーションのオプション</strong>①
<ul class="wp-block-list">
<li><strong>類似度と差分結果のレポート</strong></li>



<li><strong>イメージバリデーションで指定するオブジェクト</strong></li>



<li><strong>期待する画像の置換</strong></li>
</ul>
</li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="9siQmAkeBy"><a href="https://ranorex.techmatrix.jp/blog/2020/03/06/image-validation-point/">イメージ バリデーション（勘所）#3</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“イメージ バリデーション（勘所）#3” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2020/03/06/image-validation-point/embed/#?secret=BwtfuF83R5#?secret=9siQmAkeBy" data-secret="9siQmAkeBy" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><strong>イメージバリデーションのオプション②</strong>
<ul class="wp-block-list">
<li><strong>プリプロセスフィルター</strong></li>



<li><strong>類似度の指定</strong></li>
</ul>
</li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="hZKSVoGKxF"><a href="https://ranorex.techmatrix.jp/blog/2023/03/31/image-validation-application/">イメージ バリデーション（応用）#4</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“イメージ バリデーション（応用）#4” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2023/03/31/image-validation-application/embed/#?secret=PNJ0zlkZrZ#?secret=hZKSVoGKxF" data-secret="hZKSVoGKxF" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><strong>ビジュアルリグレッションテスト</strong><br>マシンに保存された新旧の2つの画像を比較</li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="bJ7eGpuFuu"><a href="https://ranorex.techmatrix.jp/blog/2026/06/19/tmx_automation_helpers_compareimagefiles/">TMX Automation Helpers リファレンス７：画像ファイルを使用した画像比較</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“TMX Automation Helpers リファレンス７：画像ファイルを使用した画像比較” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2026/06/19/tmx_automation_helpers_compareimagefiles/embed/#?secret=iEROBgCaoU#?secret=bJ7eGpuFuu" data-secret="bJ7eGpuFuu" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><strong>人の目では認識できない微細な差分を成功とするイメージバリデーション</strong>
<ul class="wp-block-list">
<li><strong>OSSツール「OpenCV」連携によるカスタマイズ</strong></li>
</ul>
</li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="JN1kqxbkyN"><a href="https://ranorex.techmatrix.jp/blog/2026/08/17/opencv-imagevalidation/">環境差に対応した柔軟な画像比較 (Ranorex + OpenCV連携)</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“環境差に対応した柔軟な画像比較 (Ranorex + OpenCV連携)” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2026/08/17/opencv-imagevalidation/embed/#?secret=MIegmVmGu6#?secret=JN1kqxbkyN" data-secret="JN1kqxbkyN" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><strong>複数のプラットフォームで画像比較を成功させるための方法</strong></li>
</ul>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="tdIylWmTlk"><a href="https://ranorex.techmatrix.jp/blog/2026/11/06/multi-platform-image-validate/">複数のプラットフォームで画像比較を成功させるための方法</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“複数のプラットフォームで画像比較を成功させるための方法” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2026/11/06/multi-platform-image-validate/embed/#?secret=Gga2d93oDk#?secret=tdIylWmTlk" data-secret="tdIylWmTlk" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>ファイル検証</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="1MRPQ5ObdY"><a href="https://ranorex.techmatrix.jp/blog/2023/02/17/file_test/">Ranorex：ファイルの検証</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Ranorex：ファイルの検証” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2023/02/17/file_test/embed/#?secret=9jG3txCc6P#?secret=1MRPQ5ObdY" data-secret="1MRPQ5ObdY" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>データベースの値の検証</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="cKVbVJOEgZ"><a href="https://ranorex.techmatrix.jp/blog/2022/10/07/database_validation/">データベースの値の検証</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“データベースの値の検証” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/10/07/database_validation/embed/#?secret=D9wsppjEgh#?secret=cKVbVJOEgZ" data-secret="cKVbVJOEgZ" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="ur6mcujZ10"><a href="https://ranorex.techmatrix.jp/blog/2023/02/03/database-validation2/">データベースの値の検証2</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“データベースの値の検証2” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2023/02/03/database-validation2/embed/#?secret=BGE7PE7Ab0#?secret=ur6mcujZ10" data-secret="ur6mcujZ10" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>検証時の待機時間の変更</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="aU7jSVuWpU"><a href="https://ranorex.techmatrix.jp/blog/2023/05/26/validation-timeout/">検証時の待機時間を変更する方法</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“検証時の待機時間を変更する方法” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2023/05/26/validation-timeout/embed/#?secret=V3xXRBqV7r#?secret=aU7jSVuWpU" data-secret="aU7jSVuWpU" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome8" class="wp-block-heading h2-blog"><strong>テスト実行</strong></h2>



<h3 class="wp-block-heading"><strong><strong><strong>テストシナリオ作成時、実行時の動作が重い</strong> </strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="kKkVrEmOOH"><a href="https://ranorex.techmatrix.jp/blog/2022/02/18/ranorex_performance/">Ranorexのパフォーマンスを改善するコツ</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Ranorexのパフォーマンスを改善するコツ” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/02/18/ranorex_performance/embed/#?secret=fwbz8ty5pV#?secret=kKkVrEmOOH" data-secret="kKkVrEmOOH" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>テスト実行の速度を変更したい</strong> </strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="sKIJ51sgIP"><a href="https://ranorex.techmatrix.jp/blog/2020/03/13/settings_test-execution_speed/">Ranorexの「設定」：テスト実行速度の調整</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Ranorexの「設定」：テスト実行速度の調整” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2020/03/13/settings_test-execution_speed/embed/#?secret=7CCvVqo77C#?secret=sKIJ51sgIP" data-secret="sKIJ51sgIP" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<ul class="wp-block-list">
<li><a href="https://support2.ranorex.com/ja/help/latest/ranorex-studio-fundamentals/ranorex-recorder/run-debug-recordings/" title=""><strong>ターボモードの設定(ユーザーガイド)</strong></a></li>
</ul>



<h3 class="wp-block-heading"><strong>コマンドライン実行</strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="U8hMmLT5HJ"><a href="https://ranorex.techmatrix.jp/blog/2022/03/04/commandline-execute/">テストの自動実行におけるコマンドラインの活用</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“テストの自動実行におけるコマンドラインの活用” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/03/04/commandline-execute/embed/#?secret=vpXtD2dZ4W#?secret=U8hMmLT5HJ" data-secret="U8hMmLT5HJ" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>リモートテスト</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="qYIsBbQiqW"><a href="https://ranorex.techmatrix.jp/blog/2020/01/31/remote-testing/">リモート環境でのテスト実行 ①</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“リモート環境でのテスト実行 ①” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2020/01/31/remote-testing/embed/#?secret=A30Z8sVdCZ#?secret=qYIsBbQiqW" data-secret="qYIsBbQiqW" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="oryLVkXHO5"><a href="https://ranorex.techmatrix.jp/blog/2021/05/07/remote-testing_screenlock/">リモート環境でのテスト実行 ②</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“リモート環境でのテスト実行 ②” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2021/05/07/remote-testing_screenlock/embed/#?secret=jeiVSuyWc9#?secret=oryLVkXHO5" data-secret="oryLVkXHO5" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong>複数の環境で同一のテストを実行する場合の注意点</strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="y54DstrcXC"><a href="https://ranorex.techmatrix.jp/blog/2024/03/29/multi_environment_execution/">複数の環境で同一のテストを実行する場合の注意点</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“複数の環境で同一のテストを実行する場合の注意点” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2024/03/29/multi_environment_execution/embed/#?secret=G1YaCeQZCD#?secret=y54DstrcXC" data-secret="y54DstrcXC" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome9" class="wp-block-heading anchor h2-blog"><strong>レポート</strong></h2>



<h3 class="wp-block-heading"><strong><strong><strong>レポートのファイル形式の変更</strong></strong></strong></h3>



<p class="wp-block-paragraph">PDF、HTML、CSV、JUnitファイル形式でレポート出力できます。</p>



<ul class="wp-block-list">
<li><a href="https://support2.ranorex.com/ja/userguide/ranorex-studio-system-details/settings-configuration/report-settings/" title=""><strong>レポートの設定(ユーザーガイド)</strong></a></li>
</ul>



<h3 class="wp-block-heading"><strong><strong><strong>ビデオレポート機能</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="hS9trG6ibB"><a href="https://ranorex.techmatrix.jp/blog/2020/11/27/video-reporting/">Ranorex Studio：ビデオレポート</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Ranorex Studio：ビデオレポート” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2020/11/27/video-reporting/embed/#?secret=uRsoUc9juM#?secret=hS9trG6ibB" data-secret="hS9trG6ibB" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome10" class="wp-block-heading anchor h2-blog"><strong>応用編</strong></h2>



<h3 class="wp-block-heading"><strong><strong><strong>データの加工方法</strong></strong></strong></h3>



<h5 class="wp-block-heading has-normal-font-size">データ(文字列)の一部だけの取得や複数の文字列の結合で、加工したデータをアクションで利用できます。</h5>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="ewsQIJQULQ"><a href="https://ranorex.techmatrix.jp/blog/2022/03/18/rx-string-manipulation/">Ranorex：ノンプログラミングによる文字列操作</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Ranorex：ノンプログラミングによる文字列操作” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/03/18/rx-string-manipulation/embed/#?secret=f3qHTasUE2#?secret=ewsQIJQULQ" data-secret="ewsQIJQULQ" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>レポートのフィルター機能</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="x8N51r9Ifj"><a href="https://ranorex.techmatrix.jp/blog/2022/07/08/report_levels/">レポートの情報量を調整する方法</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“レポートの情報量を調整する方法” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/07/08/report_levels/embed/#?secret=R81Ty3A0VP#?secret=x8N51r9Ifj" data-secret="x8N51r9Ifj" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>オブジェクトのPathを可変にする方法</strong> </strong></strong></h3>



<p class="wp-block-paragraph">以下の記事で、1つのRanoreXPathを可変にし、複数のセルの指定に使用する方法について解説しています。</p>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="rMjZFfEVt1"><a href="https://ranorex.techmatrix.jp/blog/2020/08/28/run-action-on-table-records/">テーブルの各レコードに対するアクション実行</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“テーブルの各レコードに対するアクション実行” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2020/08/28/run-action-on-table-records/embed/#?secret=juL8m3TONF#?secret=rMjZFfEVt1" data-secret="rMjZFfEVt1" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome10" class="wp-block-heading anchor h2-blog"><strong>CI/CD連携</strong></h2>



<h3 class="wp-block-heading"><strong><strong><strong>Jenkins連携</strong> </strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="wfAksaJb2L"><a href="https://ranorex.techmatrix.jp/blog/2019/08/09/integrating-ranorex-automation-in-jenkins-continuous-integration-process/">Jenkins への自動化テストの統合</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Jenkins への自動化テストの統合” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2019/08/09/integrating-ranorex-automation-in-jenkins-continuous-integration-process/embed/#?secret=OUBiabb5he#?secret=wfAksaJb2L" data-secret="wfAksaJb2L" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>Azure DevOps連携</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="PO71j0hUns"><a href="https://ranorex.techmatrix.jp/blog/2024/10/16/integrating-azure-devops/">Azure DevOps との連携</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Azure DevOps との連携” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2024/10/16/integrating-azure-devops/embed/#?secret=jincDjQjsw#?secret=PO71j0hUns" data-secret="PO71j0hUns" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome11" class="wp-block-heading anchor h2-blog"><strong>ツール比較</strong></h2>



<h3 class="wp-block-heading"><strong><strong><strong>Playwright</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="8aNKwHBAx9"><a href="https://ranorex.techmatrix.jp/blog/2025/10/28/playwright_ranorex/">Playwright と Ranorex の違い</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Playwright と Ranorex の違い” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2025/10/28/playwright_ranorex/embed/#?secret=WL9ob4QOlN#?secret=8aNKwHBAx9" data-secret="8aNKwHBAx9" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>Selenium</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="zJ7VKb028V"><a href="https://ranorex.techmatrix.jp/blog/2021/12/24/reasons-choose-ranorex-over-selenium/">SeleniumではなくRanorexを選択する主な理由</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“SeleniumではなくRanorexを選択する主な理由” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2021/12/24/reasons-choose-ranorex-over-selenium/embed/#?secret=1R7ttWSltA#?secret=zJ7VKb028V" data-secret="zJ7VKb028V" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="YQzoqRD9Hx"><a href="https://ranorex.techmatrix.jp/blog/2022/04/01/difference-ranorex-selenium/">SeleniumとRanorexの違い -オブジェクト認識-</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“SeleniumとRanorexの違い -オブジェクト認識-” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/04/01/difference-ranorex-selenium/embed/#?secret=3scJd9tAj7#?secret=YQzoqRD9Hx" data-secret="YQzoqRD9Hx" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="RpNfv1zC2q"><a href="https://ranorex.techmatrix.jp/blog/2023/10/27/selenum_tools_cost/">Selenium系ツールによるテスト自動化運用の隠れたコスト</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Selenium系ツールによるテスト自動化運用の隠れたコスト” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2023/10/27/selenum_tools_cost/embed/#?secret=Gm1yAMOkPH#?secret=RpNfv1zC2q" data-secret="RpNfv1zC2q" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>UWSC</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="pw6K01ayl7"><a href="https://ranorex.techmatrix.jp/blog/2022/12/16/uwscandranorex/">UWSC と Ranorex の違い</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“UWSC と Ranorex の違い” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/12/16/uwscandranorex/embed/#?secret=65xXMWAHz3#?secret=pw6K01ayl7" data-secret="pw6K01ayl7" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>Power Automate for desktop</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="w7mtD1dbpe"><a href="https://ranorex.techmatrix.jp/blog/2024/01/05/powerautomateandranorex/">Power Automate for desktop と Ranorex の違い</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Power Automate for desktop と Ranorex の違い” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2024/01/05/powerautomateandranorex/embed/#?secret=6qFyGFLPJP#?secret=w7mtD1dbpe" data-secret="w7mtD1dbpe" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h2 id="matome12" class="wp-block-heading anchor h2-blog"><strong>その他</strong></h2>



<h3 class="wp-block-heading"><strong>課題管理ツール「<strong><strong>Jira」連携</strong></strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="5uCo9JBqXU"><a href="https://ranorex.techmatrix.jp/blog/2022/11/18/jira-integration/">Ranorex と Jira 連携について</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“Ranorex と Jira 連携について” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2022/11/18/jira-integration/embed/#?secret=Sd0EYi1uFK#?secret=5uCo9JBqXU" data-secret="5uCo9JBqXU" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure>



<h3 class="wp-block-heading"><strong><strong><strong>テスト管理ツール「TestRail」連携</strong> </strong></strong></h3>



<figure class="wp-block-embed is-type-wp-embed is-provider-ranorex wp-block-embed-ranorex"><div class="wp-block-embed__wrapper">
<blockquote class="wp-embedded-content" data-secret="aiphA4D4ba"><a href="https://ranorex.techmatrix.jp/blog/2020/10/30/manual-and-automation-testcase-management/">手動/自動テストのテストケース管理</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="“手動/自動テストのテストケース管理” — テスト自動化ツール 『Ranorex』" src="https://ranorex.techmatrix.jp/blog/2020/10/30/manual-and-automation-testcase-management/embed/#?secret=9yKSAPnu0n#?secret=aiphA4D4ba" data-secret="aiphA4D4ba" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
</div></figure><p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/06/03/matome/">Ranorex 活用術まとめ</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Ranorex＋reg-cli連携によるビジュアルテスト</title>
		<link>https://ranorex.techmatrix.jp/blog/2022/05/27/ranorex_visual_testing/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Fri, 27 May 2022 02:00:54 +0000</pubDate>
				<category><![CDATA[ツール連携]]></category>
		<category><![CDATA[ノウハウ]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=15777</guid>

					<description><![CDATA[<p>今回は、Ranorexとreg-cli（reg-suit）の連携によるビジュアルテストの検証について紹介します。 Ranorex単体でも、ノンプログラミングによる画像比較や、ビジュアルテストを行うことも可能であり、どの方 [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/05/27/ranorex_visual_testing/">Ranorex＋reg-cli連携によるビジュアルテスト</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img loading="lazy" decoding="async" width="1024" height="683" src="https://ranorex.techmatrix.jp/wp-content/uploads/20220511_笑顔と悲しい顔のバランスを取るために彼女の手を使って心を落ち着かせる女性。-1024x683.png" class="attachment-large size-large wp-post-image" alt="" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20220511_笑顔と悲しい顔のバランスを取るために彼女の手を使って心を落ち着かせる女性。-1024x683.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/20220511_笑顔と悲しい顔のバランスを取るために彼女の手を使って心を落ち着かせる女性。-300x200.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20220511_笑顔と悲しい顔のバランスを取るために彼女の手を使って心を落ち着かせる女性。-768x512.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/20220511_笑顔と悲しい顔のバランスを取るために彼女の手を使って心を落ち着かせる女性。-1536x1024.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/20220511_笑顔と悲しい顔のバランスを取るために彼女の手を使って心を落ち着かせる女性。-2048x1365.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></div>
<p class="wp-block-paragraph">今回は、Ranorexとreg-cli（reg-suit）の連携によるビジュアルテストの検証について紹介します。</p>



<p class="wp-block-paragraph">Ranorex単体でも、ノンプログラミングによる<strong><a href="https://support2.ranorex.com/ja/help/latest/ranorex-studio-fundamentals/test-validation/image-based-validation-example/" target="_blank" rel="noopener" title="">画像比較</a></strong>や、<strong><a href="https://ranorex.techmatrix.jp/blog/2021/04/09/user-code-reference_full-screen-shot_image_validation/" target="_blank" rel="noreferrer noopener">ビジュアルテスト</a></strong>を行うことも可能であり、どの方法使用するかはテスト内容や環境に合わせて選択することができます。</p>



<h3 class="wp-block-heading" style="font-size:24px"><strong>reg-cli（reg-suit）とは？</strong></h3>



<p class="wp-block-paragraph"><strong>reg-cli</strong>は、VRT（Visual Regression Testing）を行うためのテストツール（OSS）であり、<a href="https://github.com/reg-viz" target="_blank" rel="noreferrer noopener"><strong>reg-viz</strong></a>にて提供されています。一般的にWebアプリなどのビジュアルリグレッションテストなどで利用されており、コマンドラインで使用できます。また、関連ツールとして<strong>reg-suit</strong>があります。</p>



<ul class="wp-block-list">
<li><strong>reg-cli</strong>：指定のフォルダ内にある２つの画像を比較し、差分結果をHTMLレポートして出力します。</li>



<li><strong>reg-suit</strong>：比較画像データや、差分結果をAWS S3などのクラウドストレージ上で管理でき、またGitHubと連携してプルリクエストに通知して差分結果を確認することもできます。（※reg-suitの内部でreg-cliが使用されています）</li>
</ul>



<p class="wp-block-paragraph"><em>※今回は、すべての作業をローカル環境にて行うため、reg-cliを使用します。</em></p>



<p class="wp-block-paragraph">reg-cliは、npm（Node Package Manager）を使用し、以下のコマンドでインストール可能です。コマンドを実行したフォルダ配下にreg-cliがインストールされます。<br><em>※npmは、<strong><a href="https://nodejs.org/ja/download/" target="_blank" rel="noreferrer noopener">Node.js</a></strong>をインストールすることで一緒にインストールされます。</em></p>



<pre class="wp-block-code"><code>npm install -D reg-cli</code></pre>



<p class="wp-block-paragraph">コマンドライン上でreg-cliを実行することで、用意した画像ファイルに対して比較を行うことができます。</p>



<pre class="wp-block-code"><code>./node_modules/.bin/reg-cli ./path/to/actual-dir ./path/to/expected-dir ./path/to/diff-dir -R ./rep/diff-report.html</code></pre>



<p class="wp-block-paragraph">reg-cliの実行時に以下のパラメータ、オプションを指定します。reg-cliのオプションは、&#8221;<strong>reg-cli &#8211;help</strong>&#8220;のコマンド実行で確認できます。</p>



<ul class="wp-block-list">
<li><strong>./path/to/actual-dir</strong>：比較元となる画像ファイルがあるフォルダパス</li>



<li><strong>./path/to/expected-dir</strong>：比較対象となる画像ファイルがあるフォルダパス</li>



<li><strong>./path/to/diff-dir</strong>：比較した画像ファイルの差分結果が保存されるフォルダパス</li>



<li><strong>-R ./rep/diff-report.html</strong>：差分結果のHTMLレポートの出力先を指定（&#8221;<strong>-R</strong>&#8220;オプションを使用）</li>
</ul>



<p class="wp-block-paragraph">reg-cliを実行すると、比較元となる画像ファイルがあるフォルダと、較対象となる画像ファイルがあるフォルダにある同一のファイル名の画像ファイルを比較します。各フォルダにはファイル名さえ異なれば複数ファイル置くことが可能なため、複数のアプリ画像を一度に比較することができ、また、比較結果を１つのレポートにまとめることができます。</p>



<p class="wp-block-paragraph">以下にRanorex＋reg-cli連携によるビジュアルテストについて解説します。</p>



<h3 class="wp-block-heading" style="font-size:24px"><strong>テストの流れ</strong></h3>



<p class="wp-block-paragraph">RanorexのUIテスト実行時に取得した画像ファイルを使用し、reg-cliで比較して結果を出力する流れになります。</p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="657" src="https://ranorex.techmatrix.jp/wp-content/uploads/20220511_img01-1024x657.png" alt="" class="wp-image-15901" style="width:844px;height:541px" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20220511_img01-1024x657.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/20220511_img01-300x193.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20220511_img01-768x493.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/20220511_img01-1536x986.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/20220511_img01-2048x1314.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<h3 class="wp-block-heading" style="font-size:24px"><strong>テストの準備</strong></h3>



<h6 class="wp-block-heading" style="font-size:18px"><strong>１．比較する画像ファイルの取得</strong></h6>



<p class="wp-block-paragraph">Ranorexの<strong><a href="https://support2.ranorex.com/ja/help/latest/ranorex-studio-fundamentals/actions/user-code-actions/" target="_blank" rel="noopener" title="">ユーザコード</a></strong>を使用し、キャプチャしたアプリ画像をファイル出力するためのメソッドを作成します。</p>



<p class="wp-block-paragraph">ユーザコードによる画像ファイルの出力方法については、過去の記事（<strong><a href="https://ranorex.techmatrix.jp/blog/2021/04/09/user-code-reference_full-screen-shot_image_validation/" target="_blank" rel="noreferrer noopener">ユーザー コード リファレンス：フルスクリーンショットのイメージ比較</a></strong>）をご参照ください。ユーザコードにて、以下のサンプルコードのように画像ファイルを出力するメソッド（fullScreenshot）を用意します。<br><em>※用意するメソッドは、どのレコーディングモジュールでも使用できるように<strong><a href="https://support2.ranorex.com/ja/help/latest/ranorex-studio-expert/user-code-library/introduction/" target="_blank" rel="noopener" title="">ユーザーコードコレクション</a></strong>として作成されることをお勧めします。</em></p>



<h6 class="wp-block-heading" style="font-size:14px">サンプルコード：<br><em>※出力する画像ファイル名は、重複しないように、&#8221;{テストケース名}_{モジュール名}_{リポジトリ名}.png&#8221;の形式で出力するようにしています。</em></h6>



<pre class="wp-block-code"><code>/// &lt;summary&gt;
/// 第1パラメーター：フルスクリーンショットを取得したいリポジトリ（アプリフォルダー）
/// 第2パラメーター：フルスクリーンショットの出力先（例：C:\tmp\imgA.png）
/// &lt;/summary&gt;
public void fullScreenshot(RepoItemInfo itemInfo, string outputImgFile)
{
	// フルスクリーンショットの取得
	Bitmap screenShot = itemInfo.FindAdapter&lt;WebDocument&gt;().CaptureFullPageScreenshot();

	// 出力する画像ファイル名（{テストケース名}_{モジュール名}_{リポジトリ名}.png）の設定
	string testCaseName = TestSuite.CurrentTestContainer.Name; // テストケース名の取得
	string moduleName = TestModuleLeaf.Current.Name; // モジュール名の取得
	string repoName = itemInfo.FullName; // リポジトリ名の取得
	string imgFileName = testCaseName + "_" + moduleName + "_" + repoName + ".png";
	
	//　フルスクリーンショットの出力
	screenShot.Save(outputImgFile + "/" + imgFileName);
		
	// レポート出力
	Report.LogData(&nbsp;ReportLevel.Info,&nbsp;"スクリーンショット",&nbsp;screenShot&nbsp;);
}</code></pre>



<p class="wp-block-paragraph">用意した画像ファイルを取得するためのメソッドをレコーディングモジュールに設定します。<br><em>※メソッド（fullScreenshot）のパラメータ（outputImgFile）にて、画像ファイルの出力先を変数化し、データソースを使用して、比較元と比較対処となる画像ファイルの出力先を切り替えれるようにすると便利です。</em></p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="140" src="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img01-1024x140.png" alt="" class="wp-image-15863" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img01-1024x140.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img01-300x41.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img01-768x105.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img01.png 1152w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<h6 class="wp-block-heading" style="font-size:18px"><b>２．</b><strong>reg-cliの設定</strong></h6>



<p class="wp-block-paragraph">新規に用意したレコーディングモジュールにて、Run applicationアクションを使用して、reg-cli（reg-cli.cmd）を実行するように設定します。<br>Run applicationアクションのArguments項目には、reg-cliのパラメーターを指定します。</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="120" src="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img02-1024x120.png" alt="" class="wp-image-15871" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img02-1024x120.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img02-300x35.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img02-768x90.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img02-1536x180.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img02-2048x240.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p class="wp-block-paragraph">テストスイートにて、テストの最後に、設定したレコーディングモジュールを追加します。下図は、&#8221;<strong>ビジュアルテスト</strong>&#8220;のテストケースに、上記の設定を行った&#8221;<strong>画像比較</strong>&#8220;のレコーディングモジュールを指定した例になります。テストを実行すると初めにUIテストを行いながら、ビジュアルテストで使用するアプリの画像を取得し、最後にビジュアルテストを実行します。</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="779" height="305" src="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img03.png" alt="" class="wp-image-15875" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img03.png 779w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img03-300x117.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img03-768x301.png 768w" sizes="(max-width: 779px) 100vw, 779px" /></figure>
</div>


<h3 class="wp-block-heading" style="font-size:24px"><strong>実行結果</strong></h3>



<p class="wp-block-paragraph">テストを作成したら実行します。初回のみ、比較元となる画像ファイルを取得するためのテストを実行する必要があります。この時、画像ファイルの出力先を間違えない様にします。２回目以降のテスト実行から、ビジュアルテストを実施できます。</p>



<p class="wp-block-paragraph">ビジュアルテストの結果は、reg-cliにて出力されたHTMLレポートにて確認できます。</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="871" height="660" src="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img04.png" alt="" class="wp-image-15884" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img04.png 871w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img04-300x227.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img04-768x582.png 768w" sizes="(max-width: 871px) 100vw, 871px" /></figure>
</div>


<p class="wp-block-paragraph">差分のあった画像をクリックすることで、差分個所を確認することができます。</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="941" height="617" src="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img05.png" alt="" class="wp-image-15885" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img05.png 941w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img05-300x197.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/20220510_img05-768x504.png 768w" sizes="(max-width: 941px) 100vw, 941px" /></figure>
</div>


<p class="wp-block-paragraph">差分の確認方法は、&#8221;<strong>Diff</strong>&#8220;、&#8221;<strong>Slide</strong>&#8220;、&#8221;<strong>2up</strong>&#8220;、&#8221;<strong>Blend</strong>&#8220;、&#8221;<strong>Toggle</strong>&#8220;のいずれかの方法で確認できます。</p>



<ul class="wp-block-list">
<li><strong>Diff</strong>：reg-cliで出力された画像差分結果（差分個所が赤色で表示されます）を確認できます。</li>



<li><strong>Slide</strong>：BeforeとAfterの水平バーを移動することで、２つの比較画像を確認できます。</li>



<li><strong>2up</strong>：比較元と比較対象の画像を並べて確認できます。</li>



<li><strong>Blend</strong>：BeforeとAfterの水平バーを移動することで、差分個所を透過させながら確認できます。</li>



<li><strong>Toggle</strong>：BeforeとAfterのスイッチを切り替えながら比較結果を確認できます。</li>
</ul>



<h3 class="wp-block-heading" style="font-size:24px"><strong>まとめ</strong></h3>



<p class="wp-block-paragraph">Ranorexにも画像比較を行うための方法として、Validationアクション（<strong>ContainsImage</strong>、<strong>CompareImage</strong>）や、Ranorex APIが用意されており、これらを使用することによりビジュアルテストを実施することも可能です。また、今回、紹介した様な他の画像比較ツールと連携することでもビジュアルテストを行えるため、さまざまな開発プロジェクトに合わせたテスト方法を選択し、柔軟に対応することが可能です。</p>



<p class="wp-block-paragraph" style="font-size:14px">関連記事：</p>



<ul class="wp-block-list">
<li><strong><a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/" target="_blank" rel="noreferrer noopener">Applitools Eyes連携 前編：Web画面全体の画像検証</a></strong></li>



<li><strong><a href="https://ranorex.techmatrix.jp/blog/2021/09/17/applitoolseyes_pdf/" target="_blank" rel="noreferrer noopener">Applitools Eyes連携 後編：PDFファイルの画像検証</a></strong></li>
</ul><p>The post <a href="https://ranorex.techmatrix.jp/blog/2022/05/27/ranorex_visual_testing/">Ranorex＋reg-cli連携によるビジュアルテスト</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Applitools Eyes連携 後編：PDFファイルの画像検証</title>
		<link>https://ranorex.techmatrix.jp/blog/2021/09/17/applitoolseyes_pdf/</link>
		
		<dc:creator><![CDATA[Ranorex編集部]]></dc:creator>
		<pubDate>Fri, 17 Sep 2021 02:00:30 +0000</pubDate>
				<category><![CDATA[ツール連携]]></category>
		<guid isPermaLink="false">https://ranorex.techmatrix.jp/?p=12454</guid>

					<description><![CDATA[<p>前編に引き続き、RanorexとApplitools Eyesの連携による画像検証について紹介します。今回は、PDFファイルのレイアウトを画像検証する方法について説明します。 Applitools Eyes連携では、前編 [&#8230;]</p>
<p>The post <a href="https://ranorex.techmatrix.jp/blog/2021/09/17/applitoolseyes_pdf/">Applitools Eyes連携 後編：PDFファイルの画像検証</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></description>
										<content:encoded><![CDATA[<div class="veu_autoEyeCatchBox"><img loading="lazy" decoding="async" width="1024" height="596" src="https://ranorex.techmatrix.jp/wp-content/uploads/AP_integration_no2-1024x596.png" class="attachment-large size-large wp-post-image" alt="" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/AP_integration_no2-1024x596.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_integration_no2-300x175.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_integration_no2-768x447.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_integration_no2.png 1213w" sizes="(max-width: 1024px) 100vw, 1024px" /></div>
<p class="wp-block-paragraph"><a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/">前編</a>に引き続き、RanorexとApplitools Eyesの連携による画像検証について紹介します。今回は、PDFファイルのレイアウトを画像検証する方法について説明します。</p>



<p class="wp-block-paragraph">Applitools Eyes連携では、<a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/">前編</a>で紹介したWeb画面全体の画像検証以外にも、 PDFファイル単位での画像比較をおこなうことが可能です。<br>なおApplitools EyesにおけるPDFファイルの画像比較については、Ranorexを連携しなくても、公式サイトからダウンロードできる<strong>ImageTester.jar</strong>を使用して、コマンドラインで検証が可能です。コマンドラインでの実行に関して詳しくは、<a href="https://applitools.com/tutorials/pdf-forms.html#steps-for-running-tests" target="_blank" rel="noreferrer noopener">公式サイト</a>をご参照ください。</p>



<p class="wp-block-paragraph"><strong><em>※Applitools Eyesとは、ビジュアルAIを用いたテスト自動化プラットフォームです。 詳しくは<a href="https://applitools.com/" target="_blank" rel="noreferrer noopener">公式サイト</a>および<a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/" target="_blank" rel="noreferrer noopener">前編</a>の記事をご参照ください。</em></strong></p>



<p class="wp-block-paragraph"><em>※本検証では、Ranorex v9.5.3を使用しています。</em></p>



<p class="wp-block-paragraph"><em>※本検証は、Applitools Eyesとの連携によるテスト実行において、動作を保証するものではありません。また、本検証に関するサポートへの問い合わせは受付けておりませんので、予めご了承いただけます様、お願いいたします。</em></p>



<h3 class="wp-block-heading">1. 事前準備</h3>



<p class="wp-block-paragraph">Applitools Eyes連携をおこなうには、いくつかの初期設定が必要です。詳しくは、<a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/">前編(Applitools Eyes連携 前編：Web画面全体の画像検証)</a>をご参照ください。</p>



<ol class="wp-block-list"><li><a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/#h3_no1">Applitools アカウントの作成</a></li><li><a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/#h3_no2">API key の取得</a></li><li><a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/#h3_no3">Ranorex ソリューションにパッケージを追加</a></li><li><a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/#h3_no4">Ranorex テストスイート設定</a></li></ol>



<h3 class="wp-block-heading">2. PDF検証用のメソッドを追加</h3>



<p class="wp-block-paragraph">Ranorex Studioにて、Applitools Eyesによるチェックをおこないたいレコーディングモジュールを開きます。<br>PDFの検証は、リポジトリアイテムではなく、pdfファイルを指定する形となるため、アクション テーブルで、[新しいアクションの追加] – [ユーザー コード] – [ライブラリから選択] をクリックし、 <strong>VisualCheckpoint(String fileOrFolderPath)</strong>メソッドをダブルクリックします。</p>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_2.png" alt="" class="wp-image-12488" width="714" height="699" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_2.png 882w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_2-300x294.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_2-768x751.png 768w" sizes="(max-width: 714px) 100vw, 714px" /></figure></div>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="656" height="483" src="https://ranorex.techmatrix.jp/wp-content/uploads/APpdf_1.png" alt="" class="wp-image-12485" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/APpdf_1.png 656w, https://ranorex.techmatrix.jp/wp-content/uploads/APpdf_1-300x221.png 300w" sizes="(max-width: 656px) 100vw, 656px" /></figure></div>



<p class="wp-block-paragraph"><br></p>



<p class="wp-block-paragraph"><strong>VisualCheckpoint(String fileOrFolderPath)</strong>メソッドの引数に、検証するPDFファイルまたはフォルダーのパスを入力します。</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="920" height="212" src="https://ranorex.techmatrix.jp/wp-content/uploads/AP_rmodule.png" alt="" class="wp-image-12486" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/AP_rmodule.png 920w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_rmodule-300x69.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_rmodule-768x177.png 768w" sizes="(max-width: 920px) 100vw, 920px" /></figure></div>



<p class="wp-block-paragraph">ファイルおよびフォルダーのパスには、以下の書式が使用できます。<br> •絶対パス<br>単一のファイルの場合: C:\users\user\documents\MyPDF.pdf<br>フォルダー全体の場合: C:\users\user\documents\ </p>



<p class="wp-block-paragraph">•相対パス<br>単一のファイルの場合: MyPDF.pdf<br>フォルダー全体の場合: documents\<br>※相対パスは、テスト実行ファイルからの相対パスです。</p>



<h3 class="wp-block-heading">3. テスト実行</h3>



<p class="wp-block-paragraph">テスト実行・結果の確認手順については、<a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/" target="_blank" rel="noreferrer noopener">前編(Applitools Eyes連携 前編：Web画面全体の画像検証)</a>をご参照ください。</p>



<p class="wp-block-paragraph">6. <a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/#h3_no6">テストの実行</a><br>7. <a href="https://ranorex.techmatrix.jp/blog/2021/09/10/applitoolseyes-web/#h3_no7">結果の確認</a></p>



<h3 class="wp-block-heading">4. 比較結果</h3>



<p class="wp-block-paragraph">今回は、扶養控除等(異動)申告書を対象に、ファイル比較をおこなってみました。<br>対象のPDFファイルが複数ページにわたる場合でも、ファイルを指定するだけですべてのページを1枚ずつ比較してくれます。</p>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_3-1024x303.png" alt="" class="wp-image-12492" width="1013" height="299" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_3-1024x303.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_3-300x89.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_3-768x228.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_3-1536x455.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_3.png 1917w" sizes="(max-width: 1013px) 100vw, 1013px" /></figure></div>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_4-1024x340.png" alt="" class="wp-image-12505" width="883" height="294" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_4-1024x340.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_4-300x99.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_4-768x255.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_4-1536x509.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_pdf_4.png 1794w" sizes="(max-width: 883px) 100vw, 883px" /></figure></div>



<p class="wp-block-paragraph"><br>画像比較の仕組みはWebアプリなどと同様です。Applitools EyesはAIを用いた画像比較が可能です。Ranorexのようなピクセル単位の比較では、人間の目ではわからないような微妙な色の違いなども差分として検知されてしまうことがありますが、Applitools Eyesでは人の目で見てわかる差分のみを検出することができます。ただし、あくまで画像比較となるため、人が判断して「似ているからOK」とするような検証がおこなえるわけではありません。<br>以下は、令和2年と令和3年の扶養控除等(異動)申告書の比較結果です。このように、見た目の似ているレイアウトであっても、大きさや表示位置が異なる場合は、差分としてレポートされます。</p>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img loading="lazy" decoding="async" src="https://ranorex.techmatrix.jp/wp-content/uploads/AP_PDF1-1024x311.png" alt="" class="wp-image-12491" width="852" height="258" srcset="https://ranorex.techmatrix.jp/wp-content/uploads/AP_PDF1-1024x311.png 1024w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_PDF1-300x91.png 300w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_PDF1-768x233.png 768w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_PDF1-1536x466.png 1536w, https://ranorex.techmatrix.jp/wp-content/uploads/AP_PDF1.png 1805w" sizes="(max-width: 852px) 100vw, 852px" /></figure></div>



<p class="wp-block-paragraph"><br>※上記の例のように、異なる２つのファイルを比較したい場合、<strong>VisualCheckpoint(String fileOrFolderPath)</strong>メソッドを使用する際は、比較したい２つのPDFファイルを同一の名前にしておき、2回目の実行前にメソッドの引数に指定したファイルを入れ替えることで比較がおこなえます。</p>



<h2 class="wp-block-heading">まとめ</h2>



<p class="wp-block-paragraph">Applitools Eyes連携を使用することで、Ranorexだけでは対応が難しかった、PDFファイル単位での画像比較が可能です。ページごとにValidateアクションを作成する必要もないため、帳票のレイアウト崩れを確認したいケースで簡単に検証がおこなえます。<br>Applitools Eyesの無償アカウントに関しては、どなたでも作成可能ですので、興味のある方はぜひお試しください。<br></p><p>The post <a href="https://ranorex.techmatrix.jp/blog/2021/09/17/applitoolseyes_pdf/">Applitools Eyes連携 後編：PDFファイルの画像検証</a> first appeared on <a href="https://ranorex.techmatrix.jp">テスト自動化ツール 『Ranorex』</a>.</p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
