wpf - 使用 Protractor 对 WPF 中 CefSharp 浏览器下托管的 AngularJS 应用程序进行自动化测试

标签 wpf protractor ui-automation chromium-embedded cefsharp

我们有一个 wpf 应用程序,它使用 cefsharp 浏览器来托管网站 (AngularJS) - 换句话说 - 混合应用程序。

我们有兴趣运行自动化测试(特别是在角度部分)。 通过一项小型研究,我们发现 TestComplete 支持 native 代码中的 cef 浏览器 Hook ,但我们希望看到所有可能性。

我们还看到,“Protractor”框架非常适合测试基于 Angular 的应用程序。 对我们来说,问题在于它只能测试 Web 部分,并且通过打开 Web 浏览器来测试它。无论如何,我们想在 native 代码(wpf)内运行的浏览器实例上运行 Protractor 测试。是否可以?您还有其他选择/想法吗? 谢谢。

最佳答案

感谢amaitland

我采纳了他的建议,并成功在 CefSharp 托管的 Web 浏览器上运行 Protractor 测试。

为了做到这一点,你必须做两件事:

  1. 在托管嵌入式 CEF Web 浏览器的 .net 应用程序(启动时)中定义调试端口:

            var settings = new CefSettings { RemoteDebuggingPort = 8088 };
            Cef.Initialize(settings);
    
  2. 在 Protractor 配置文件中,应在功能下定义完整的调试地址“ip:port”:

         seleniumAddress: 'http://localhost:4444/wd/hub',
         specs: ['./tests.spec.js'],
         capabilities: {
    
               'browserName': 'chrome',
    
               'chromeOptions': {'debuggerAddress': "127.0.0.1:8088" }
         }
    
  3. 运行.net应用程序并使用托管网络浏览器进入屏幕

  4. 运行 Protractor configuration.js

关于wpf - 使用 Protractor 对 WPF 中 CefSharp 浏览器下托管的 AngularJS 应用程序进行自动化测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35114639/

相关文章:

c# - WPF : Attaching some data to a Button

node.js - 如何从 Protractor 中包含的文件进行导航?

javascript - Protractor 进度输出

android - 在下拉列表中使用 UiAutomator

wpf - 在应用程序中管理多个 WPF View

c# - 绑定(bind)到 ObservableCollection 附加属性

c# - System.Windows.Controls.Canvas 到 System.Windows.Controls.TextBox 的无效转换异常

javascript - 数组中用于匹配表达式的字符串之一

java - 诱惑和截图

selenium-webdriver - 如何使用 appium 在 android 混合应用程序上查找元素