问题标签 [web-component-tester]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
307 浏览

polymer - 调用夹具时聚合物冲洗

可以在调用夹具的设置中放置刷新功能吗?我已经尝试过了,它仍然工作得更好,因为我不需要在每次测试中都刷新。在谷歌上找不到做那种事情的例子。有什么建议吗?

并且测试将像这样直接。

*测试部分的纸卡在dom-repeat中渲染。

谢谢大家。

0 投票
1 回答
380 浏览

polymer - 如何在不刷新页面的情况下测试 Polymer 2 元素中的表单提交

我有一个包含表单和文本输入的 Polymer 2“搜索”组件。该组件使用 处理表单元素上的表单提交on-submit="_handleFormSubmit",并调用处理函数event.preventDefault()。这在实际应用程序中使用时按预期工作 - 表单提交不由浏览器处理,因此没有页面刷新。此外,处理程序创建一个search在组件上触发的自定义事件。这是它的代码:

search我正在尝试为此组件编写测试,但是当我尝试测试事件时,我似乎无法阻止表单提交刷新测试页面(因此是无限测试循环) 。这是我的测试的样子:

我尝试更改formEl.dispatchEvent(new Event('submit'))formEl.submit()并出现同样的问题,尽管使用该submit()方法似乎比触发事件更快地刷新页面。此外,在触发事件时,我会在控制台中获得完整的测试输出(因此它会告诉我所有测试都通过了),然后才会刷新。

谢谢你的帮助。

0 投票
1 回答
115 浏览

polymer - Polymer 的 web-component-tester 可以使用 Chai API 吗?

我有这个可以消除的夹具<page-welcome>

在 内<page-welcome>,我导入<paper-button>并给它一个big-btn. 这个按钮存在于<page-welcome>元素上很重要,所以我想测试它:

据我了解,我应该能够使用所有 Chai API,因此assert.exists应该可用。

但是为什么我会收到以下错误?

0 投票
2 回答
605 浏览

polymer - 导入元素类的 ESLint no-undef

我有一个要测试的元素(display-enter-button.html):

我想验证_btnClick当我点击回车按钮时该方法是否被调用。这是我的单元测试:

测试运行,但我无法通过这个 ESLint 错误:

'DisplayEnterButton' 未定义 no-undef

如果可能的话,我想避免 ESLint 规则异常(例如global),因为我将来会大量使用这种模式。我该如何解决这个错误?

0 投票
1 回答
478 浏览

javascript - 如何测试聚合物中元素的存在?

我在我的聚合物组件中面临这个问题,无法找出我面临的问题。以下是我的代码:

以下是我的测试(我已经按照预期编写了输出):

First expect(...) 的结果是可以理解的。但是第二个 expect(...) 如何通过?
这里最重要的事情,可能是根本原因,是在 Third expect(...) 它说expected 'history not present' to equal 'ABCD'。这意味着代码转到_isHistoryPresent()方法内的else{}块。如何?

如何使用 dom-if 测试动态创建的元素的存在?

0 投票
1 回答
216 浏览

node.js - 离线运行 web-component-tester

我使用npm install -g web-component-tester. 之后,我运行wct了一个仅用 chrome 编写的简单测试。随后,我搬到了一个无法始终连接到互联网的环境。由于我已经运行过一次 wct,我希望它会再次运行。但是重新运行命令会wct --verbose -l chrome出现以下错误:

似乎想要我什至没有指定在我的命令中运行的 Mozilla selenium 驱动程序!我该如何解决?

0 投票
0 回答
77 浏览

javascript - 如何使用聚合物测试网络摄像头、音频和麦克风

我正在寻找一种使用 Polymer Web 组件测试器的方法,在网页上测试用户的网络摄像头(如果已连接)、音频(耳机、扬声器)和麦克风(是否连接)。

我已经搜索了一段时间,试图找到可行的方法;但是,没有得出任何结果。

我正在寻找有关如何执行此操作的示例或文档(如果可能)

0 投票
0 回答
140 浏览

node.js - 为什么 web-component-tester 在飞行模式下会超时?

我有一个基本的 web-component-tester 项目,当我在线时可以正常工作。

如果我切换到飞行模式,它似乎无法连接到 Selenium,而是在大约 60 秒延迟后给出一个基本上无用的错误消息:“错误:无法连接到 selenium”。

编辑 2:我已经在以下问题中缩小了问题的范围,但我仍然想知道如何使用 web-component-tester 来避免它:

编辑:经过一番挖掘,这与 selenium-standalone 在飞行模式下失败的 DNS 解析器有关,与 web-component-tester 没有太大关系。

在将一些调试日志插入 selenium-standalone 之后,我跟踪了故障点以检查 Selenium 是否正在运行。在线时,这工作正常,但离线时我得到:

以下似乎描述了类似的情况,但我不明白如何说服 selenium-standalone 或 web-component-tester 指定 IP 地址系列,甚至尝试建议的解决方案:

我的原文如下。

完整的错误日志和 wct.conf.json 如下。如果有帮助,我也可以提供 package.json 和 bower.json。

我在 Windows 10 上。

wct.conf.json:

错误日志:

0 投票
1 回答
58 浏览

polymer - 从 Polymer CLI 启动测试时,如何指定 Sauce Labs 应使用的浏览器?

我有一个仅 Polymer v1.7 元素的项目。

我用 Travis CI 和 Sauce Labs 设置了它,效果很好!

但是,我希望能够通过 Sauce Labs 在特定浏览器中启动测试,而不必每次都修改我的 wct.conf.json 文件。

Polymer CLI 的帮助输出显示您可以使用该--sauce标志指定浏览器,但没有告诉您需要什么格式:

-s, --sauce string Remote Sauce Labs browsers to run tests on, or 'default'

谁能告诉我如何指定浏览器?我想我需要告诉它我需要什么平台、浏览器和版本,只是不知道怎么做!

0 投票
0 回答
97 浏览

polymer - 在 Windows Edge 浏览器上运行聚合物自动测试

我使用聚合物 2 和聚合物 cli 创建了一个应用程序:

https://github.com/jfcorugedo/polymer-timer-manager

我已经使用聚合物功能编写了一些测试代码。

当我在 MacOS 上运行测试时,一切正常。web-component-tester找到我的浏览器(chrome 和 safari)并运行所有测试。

当我尝试在 Windows 上运行测试时,问题就出现了。

当我在 Windows 10 和 Microsoft Edge 38.14393.1066.0 上运行测试时,web-component-tester找不到我的边缘安装。它在 chrome、firefox 和 IE11 上运行测试,但不是 edge。

如果事实上我试图将 wtc 指向边缘,但它不起作用:

在我看来,我无法使用 wtc 在边缘运行自动化测试。

如何在 Windows Edge 浏览器上运行我的 wtc 测试?