Sikuli Integrator C#

本文关键字:Integrator Sikuli | 更新日期: 2023-09-27 18:36:39

我想在C#中使用SikuliIntegrator。我以管理员身份运行VS,通过NuGet管理器安装SikuliIntegrator,并希望在简单的任务上测试他。

这是我的代码

using SikuliModule;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SikuliTrainingNet
{
    class Program
    {
        static void Main(string[] args)
        {
            string MyPicture = @"c:'111'Sik'MyPicture.png";
            SikuliAction.Click(MyPicture);
        }
    }
}

运行代码(并在屏幕上准备好 MyPicture)后,我得到的只是异常"###FAILURE"知道为什么吗?

我不想使用 Sikuli4Net,因为它的外观就像在 Web 应用程序上运行一样,我只需要在桌面应用程序上单击几下即可。

我尝试用 Java 中的 sikuli,在那里它可以毫无问题地工作。但是我需要用 C# 制作我的程序。

Sikuli Integrator C#

我在 C# 中将这段代码用于 Sikuli4Net,它首先为我工作 您需要添加参考文献 请参阅此链接以获取参考http://interviews.ga/angularjs/sikulic/

static void Main(string[] args)
        {
            APILauncher launch = new APILauncher(true);
            Pattern image1 = new Pattern(@"C:'Users'Ramesh'Desktop'Images'userName.png");
            Pattern image2 = new Pattern(@"C:'Users'Ramesh'Desktop'Images'password.png");
            Pattern image3 = new Pattern(@"C:'Users'Ramesh'Desktop'Images'Login.png");
            launch.Start();
            IWebDriver driver = new ChromeDriver();
            driver.Manage().Window.Maximize();
            driver.Url = "http://gmail.com";
            Screen scr = new Screen();
            scr.Type(image1, "abc@gmail.com", KeyModifier.NONE);
            scr.Type(image2, "12345", KeyModifier.NONE);
            scr.Click(image3, true);
            Console.ReadLine();
        }

我使用了这段代码,它工作正常。首先,您应该打开要单击的网页,然后给出图像的路径(它应该是网页的一部分)

这是我的代码:

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using SikuliModule;
using OpenQA.Selenium;
namespace WordPressAutomation.DifferentTests
{
    [TestClass]
public class Sikuli
{
    [TestMethod]
    public void TestMethod1()
    {
        driver.Initialize();
        driver.instance.Navigate().GoToUrl("https://www.google.co.in");
        SikuliAction.Click("E:/img.png");
    }
}
}

要使用SikuliInyegrator,您需要检查以下文件中的执行结果:

C:'SikuliExceptionLog.txt
C:'SikuliOutputLog.txt

您还需要:

  • 已安装 JRE7 或更高版本
  • 具有包含bin文件夹位置的环境变量PATH
  • 请参阅"控制面板>程序和功能>可视C++ 2010 可再发行组件包"中的 x86 和 x64 位(根据您的 Java JRE 运行时平台)。如果没有,请下载并安装"可再发行组件包"窗体Microsoft站点。