问题标签 [canopy-web-testing]

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 投票
1 回答
109 浏览

html - 尝试使用 Canopy 和 F# 检索类中的类

我正在尝试使用Canopy来使用 F# 在这里玩井字游戏。“板”如下所示

当您单击放置 X 或 O 时,它会更改<div><div class="o">我正在尝试检索板的状态,但它不起作用,因为比如说我做了最简单的事情

这将返回 9 个元素......但它不会返回子 div 是否为 x,因为“x”是属性而不是值。

所以基本上我的问题是。如何检索某个位置包含 X 或 O。

0 投票
1 回答
1065 浏览

visual-studio-2012 - System.MissingMethodException:找不到方法:'Microsoft .FSharp.Core.FSharpFunc`2

在 Windows 框中启动 Canopy 测试时遇到问题:

我猜这是因为在编译它时,我的 Visual Studio 2012 恢复了 Nuget 包并将其吐在控制台输出中:

如何准确添加此重新映射以解决此问题?

0 投票
1 回答
11309 浏览

f# - 错误 MSB4102:元素中“项目”属性的值“”是无效的。参数“路径”的长度不能为零。F#

在 Team city 中构建项目时出现以下错误。

相同的项目正在本地机器上构建。本地机器有 VS 2015 和 F# 4.0。

我的项目配置如下。

这是控制台应用程序。

0 投票
2 回答
310 浏览

f# - Click a Canopy WebElement

I have a button that I am retrieving with canopy like this...

The last button is the one I want to click, but when I do...

I get an error that says

"Can't click [OpenQA.Selenium.Remote.RemoteWebElement] because it is not a string or webelement"

So my question is, is there a way to do what I'm trying to do?

0 投票
2 回答
860 浏览

google-chrome - 使用 Selenium(Ubuntu)的无头 chrome 上的“无法获得自动化扩展”错误

我在我的 Ubuntu 服务器 (16.04) 上安装了最新的 Google Chrome 57.0.2987.110。我正在使用树冠(这是 Selenium 的 F# 包装器)。我将最新的 chromedriver 放在与我的二进制文件相同的文件夹中,版本:2.28.455506(并且我设置了正确的驱动程序路径)。

我用--headless参数开始 chrome,如下所示:

一旦开始,我就会收到此错误:

[错误] 致命的未处理异常:System.InvalidOperationException:未知错误:无法从未知错误获取自动化扩展:找不到页面:chrome-extension://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html(会话信息:内容外壳 =)(驱动程序信息: chromedriver=2.28.455506 (18f6627e265f442aeec9b6661a49fe819aeeea1f),platform=Linux 4.4.0-64-generic x86_64) at OpenQA.Selenium.Remote.RemoteWebDriver.UnpackAndThrowOnError (OpenQA.Selenium.Remote.Response errorResponse) [0x000d5] in <2096f357ed27440a8e98c8a8dd645cdd>: 0 在 OpenQA.Selenium.Remote.RemoteWebDriver.Execute (System.String driverCommandToExecute, System.Collections.Generic.Dictionary`2[TKey,TValue] 参数) [0x00046] in <2096f357ed27440a8e98c8a8dd645cdd>:0 在 OpenQA.Selenium.Remote.RemoteWebDriver .InternalExecute (System.String driverCommandToExecute, System.Collections.Generic.Dictionary 2[TKey,TValue] 参数) [0x00000] in <2096f357ed27440a8e98c8a8dd645cdd>:0 at OpenQA.Selenium.Remote.RemoteWindow.set_Size (System.Drawing.Size 值) [ 0x00067] in <2096f357ed27440a8e98c8a8dd645cdd>:0 at canopy.core.pin (canopy.types+direction 方向) [0x0002f] in <58c4b5b9d8107025a7450383b9b5c458>:0 at canopy.core.start (canopy.0050cBrowser] inMode bStart (canopy.005c+Browser]) 58c4b5b9d8107025a7450383b9b5c458>:0pin (canopy.types+direction direction) [0x0002f] in <58c4b5b9d8107025a7450383b9b5c458>:0 at canopy.core.start (canopy.types+BrowserStartMode b) [0x0050c] in <58c4b5b9d8107025a7450383b9b5c458>:0pin (canopy.types+direction direction) [0x0002f] in <58c4b5b9d8107025a7450383b9b5c458>:0 at canopy.core.start (canopy.types+BrowserStartMode b) [0x0050c] in <58c4b5b9d8107025a7450383b9b5c458>:0

似乎无法设置窗口大小。启动无头 Chrome 的正确方法是什么?我在某处读到最新版本具有无头功能。由于我使用的是最新版本的 Google Chrome 和 chromedriver,我认为这不应该是版本不匹配。

它在具有相同版本 chromedrive 的本地 Windows 10 机器上也可以正常工作(仅适用于 Windows)。

0 投票
2 回答
170 浏览

f# - 为什么调用函数两次时出现stackoverflow异常?

我有一个用 F# 编写的 selenium UI 测试(使用 canopy selenium nuget 包)。我有一个定义页面选择器和辅助函数的模块。页面模块由测试模块调用。在测试模块中,我调用了一个名为“handlemobimodals()”的函数,该函数运行四个子函数(if/else 代码块),用于查找页面上是否存在元素并单击它(如果存在)。

我面临的问题是,当在测试中第二次调用“handlemobimodals()”函数时,我得到一个堆栈溢出异常(WebDriver 进程由于 StackOverflowException 而终止),就在它的第一个子函数被调用之后.

该函数第一次运行完全正常(在测试早期从另一个函数间接调用),但在测试中直接调用时第二次失败。我对 F# 很陌生,我无法弄清楚我是如何在我的测试中导致递归的,正如 stackoverflow 异常所暗示的那样。

任何见解将不胜感激。

页面模块的片段:

来自测试模块的片段(注意在 LoginforPathAs 函数中调用了 handleMobiModals 函数的第一个实例,该函数在同一页面定义模块中定义):

注意:为了简单明了,对片段进行了编辑。

0 投票
1 回答
2310 浏览

apache - 如何让我的本地网站通过 URL 打开

我设置了一个 apache 服务器并在以下位置创建了一个网站:var\www\mywebsite. 当我在浏览器的地址栏中输入我的网站名称时,它会将我定向到互联网。当我禁用网络(作为临时解决方案)时,它根本没有打开网站。但是,index当我在地址栏中键入完整的目录路径时,网站页面会显示。我做了虚拟主机:

然后,键入:

test.com在地址栏中写下我的网站名称时,如何使我的网站主页直接打开?

0 投票
0 回答
65 浏览

selenium-webdriver - 如何在 Canopy 中获取当前正在执行的测试的名称

我想在before函数中获取当前正在执行的树冠测试的名称。

有没有我可以参考的全球背景,还是我需要深入研究硒?

0 投票
0 回答
494 浏览

protractor - Protractor 和 Canopy-web-testing 的优缺点是什么?

我正在寻找最好的自动化工具来自动化我的 Web 应用程序。那么,有人可以告诉我以上两种工具的优缺点吗?

0 投票
1 回答
436 浏览

docker - 如何在 Canopy(硒库)中设置 ChromeDriver 端口?

我在 Docker 容器中使用 Canopy 并希望将端口指定为 4444,而不是在调用 canopy.core.start 时分配的最终随机端口,因为多个连接错误错误:ConnectFailure(连接被拒绝) - 或失败启动驱动程序。

错误:ConnectFailure(连接被拒绝)<--- docker容器中的多个

在端口 36479 <--如何指定ChromeDriver 2.35.528139 (47ead77cb35ad2a9a83248b292151462a66cd881)