Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用appium在混合应用程序中自动化第三方支付页面?_Appium_Hybrid Mobile App - Fatal编程技术网

如何使用appium在混合应用程序中自动化第三方支付页面?

如何使用appium在混合应用程序中自动化第三方支付页面?,appium,hybrid-mobile-app,Appium,Hybrid Mobile App,我正在尝试使用Appium自动化一个混合应用程序,该应用程序使用第三方支付网关,因此当用户必须使用VISA卡支付时,它会在网络视图中打开他们的页面。驱动程序无法获取支付页面的页面源。我认为应用程序正在打开另一个窗口,这就是我无法捕获它的原因,因此,为了捕获它,您需要在所有窗口中循环,并通过检查现有元素确保当前使用的窗口是所需的窗口。 这是C语言的代码# 我得到了驱动程序的URL,它显示的是应用程序的URL,而不是支付页面的URL,所以问题是如何让驱动程序检测到新打开的页面?

我正在尝试使用Appium自动化一个混合应用程序,该应用程序使用第三方支付网关,因此当用户必须使用VISA卡支付时,它会在网络视图中打开他们的页面。驱动程序无法获取支付页面的页面源。

我认为应用程序正在打开另一个窗口,这就是我无法捕获它的原因,因此,为了捕获它,您需要在所有窗口中循环,并通过检查现有元素确保当前使用的窗口是所需的窗口。 这是C语言的代码#


我得到了驱动程序的URL,它显示的是应用程序的URL,而不是支付页面的URL,所以问题是如何让驱动程序检测到新打开的页面?
            foreach (var Wind in Setup.driver.WindowHandles)
            {
                Console.WriteLine("Window name is " + item );
                Setup.driver.SwitchTo().Window(item);
                Console.WriteLine(Setup.driver.Url);                    
                var Condition= Setup.driver.FindElements(By.XPath
                ("//button[contains(.,'Pay')]")).Count;
                Console.WriteLine(x);
                if (x == 1)
                {  
                    break;
                }