如何将 WebdriverIO 的浏览器对象传递给 SeleniumWebDriverHarnessEnvironment 以进行线束加载器(@angular/cdk/testing)

Posted

技术标签:

【中文标题】如何将 WebdriverIO 的浏览器对象传递给 SeleniumWebDriverHarnessEnvironment 以进行线束加载器(@angular/cdk/testing)【英文标题】:How to pass WebdriverIO's browser object to SeleniumWebDriverHarnessEnvironment for harness loader(@angular/cdk/testing) 【发布时间】:2021-08-02 20:30:26 【问题描述】:

我刚刚开始使用 WebdriverIO,因为 Protractor 已被弃用。

之前我们使用 Angular 的 Component Harness 进行测试。当我们尝试迁移现有测试时,我们发现 Angular 团队实现了“@angular/cdk/testing/selenium-webdriver”作为 Protractor-harness 环境的替代品。

当我将 WebdriverIO 浏览器的对象传递给 SeleniumWebDriverHarnessEnvironment 时,我现在遇到了一个阻止程序。有人可以帮我找到解决方案吗?

import  SeleniumWebDriverHarnessEnvironment  from "@angular/cdk/testing/selenium-webdriver";
const harnessLoader: HarnessLoader = SeleniumWebDriverHarnessEnvironment.loader(driver);

我收到一个错误

'TypeError: root(...).findElements is not a function'.
at .\src\cdk\testing\selenium-webdriver\selenium-web-driver-harness-environment.ts:43:14

【问题讨论】:

最好也使用量角器或 webdriver-io 存储库打开问题。 你在这方面有什么进展吗?谢谢 【参考方案1】:

我遇到了同样的问题,我发现升级到 Angular 13 有帮助。

我发现了一些由 Angular 团队编写的 e2e 测试代码,版本为 13

【讨论】:

以上是关于如何将 WebdriverIO 的浏览器对象传递给 SeleniumWebDriverHarnessEnvironment 以进行线束加载器(@angular/cdk/testing)的主要内容,如果未能解决你的问题,请参考以下文章

如何将库类或对象传递给片段?

如何将 json 对象传递给 mvc 控制器

如何将 C++ 对象传递给 C# 类库

如何将包含流的复杂对象传递给活动

如何将上下文对象传递给 NSValueTransformer

是否有任何用于将 JSON 对象传递给 android 的 PHP 配置?