问题标签 [nightwatch]
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.
python-3.x - 命令在终端上运行时在 python 子进程中正常工作,但在 crontab 中执行时失败
我正在尝试每天从 crontab 启动守夜测试。当我在 macOS 终端上启动我的 python 脚本时一切正常,但是一旦我通过调用我的 python script 启动 cron 作业。发生以下错误:
我试图设置下面是我尝试从 python 子进程运行的命令:
我需要运行的实际命令是:
我想这是因为子进程找不到“节点”我在终端上运行“哪个节点”它可以在这里找到:
那么我在这里缺少什么?
javascript - Nightwatch 使用 chromedriver 版本 83 在脚本上返回“未定义”全局值
大家好,这是我第一次在 StackOverflow 上发帖。
我的 chromedriver 版本 77 的守夜脚本之前一直在工作,直到我更新到版本 83,当我在测试脚本上使用它时,它会undefined
从全局变量中抛出一个字符串值。nightwatch.conf.js
这是我nightwatch.conf.js
自定义的环境设置示例配置;
使用的代码:
var test_site = browser.demo_site
将全局变量输入demo_site
到网站的文本框中。我用过的browser.setValue(`<sample_xpath_here>`,`${test_site}`)
预期结果:
在文本框内fake.site.com
实际结果:
在文本框内undefined
javascript - 使用 Nightwatch 编写异步自定义命令
在过去的 3 天里,我一直在尝试获取一个函数,但没有成功,我正在使用该函数来获取适合某个选择器的元素列表的 CSS 选择器路径,以在 Nightwatch JS 中作为自定义命令工作。
你给命令的内容:
输出应该是什么:
等等。
我尝试了很多不同的方法来实现它,但没有成功,我对 Async/Await 还很陌生,所以我运气不好,也无法将 Nightwatch.js 指南中的示例联系起来(https ://nightwatchjs.org/guide/extending-nightwatch/#writing-custom-commands)到我的问题。
我使用如何为 DOM 元素生成唯一 css 选择器中的代码段编写了以下内容? :
从那里,我希望在调用此自定义命令的测试代码中能够使用await
它。这个命令必须在多个元素上调用,所以使它成为一个回调函数,虽然可以工作,但也会把我的代码放在一个永恒的回调堆栈中,这会让它看起来非常难看,非常快。
理想情况下,我希望代码变成这样:
不幸的是,我总是得到undefined
作为我努力的成果。:/
几天到将近一周,我一直在为此绞尽脑汁,并尝试了 Promise 和 Event 实现,但这一点超出了我的范围,所以我求助于 SO。任何帮助将不胜感激!
javascript - 祖先.shift 不是一个函数
我正在尝试让自动化测试重新启动并运行,并且在运行测试时遇到以下问题。
该函数的目标是,如果选择器来自页面的一部分,对象选择器将是一个对象数组,从最外层的祖先(部分)开始,并以元素结束,依次加入它们的选择器。
错误信息:
Error while running "getElements" command: ancestors.shift is not a function
功能:
下面调用 getSelector 函数的代码:
javascript - Nightwatch 1.3.5,能够接受警报,但无法从中获取文本。Salesforce UI 自动化
我正在使用 Nightwatch.js 开发 Salesforce UI 自动化
我在从警报中获取文本时遇到问题。我能够触发警报并接受它,但不能从中获取文本。
场景: 1- 用户点击获取交易 2- 几秒钟后,用户收到消息“银行账户交易详情已成功提取”。
警报示例:
根据官方文档,应该可以使用 getAlertText() 获取警报
在代码中,做 browser.acceptAlert() 没有问题,但如果在接受之前我做了这样的事情:
然后记录该文本,我得到这个:
它还在继续,但是太长了,无法全部分享。我收到的不是文本“银行账户交易详情已成功提取”。这个过程在香草硒中非常简单,所以我不确定我在这里遗漏了其他东西。
我确实尝试在获取文本之前切换到警报,但出现以下错误:
我用这个:browser.switchTo().alert()
最后,如果我删除接受警报,那么测试将给出以下错误,因为它试图在结束时截取屏幕截图,但被我试图验证的警报阻止。这让我觉得它能够以某种方式看到文本:
有问题的代码:(请注意,由于测试,有部分被注释掉,在开始工作时接受警报,因此被注释掉)
我在代码中添加了一些注释供参考。
在此先感谢您的帮助。
selenium - 守夜人硒。如何按下:CTRL + SHIFT + j
我已经尝试了我想出的每一种组合,但都没有成功。
等等
知道如何使它工作吗?谢谢。
javascript - 如何在 selenium Safari Capabilities 中设置默认下载目录?
我一直在寻找与设置 Safari 功能相关的文档。浏览器不会将文件下载到给定路径。
有没有人有什么建议?
提前致谢!
selenium - 剑道 DatePicker 上的硒(守夜人)setValue 不起作用
我正在尝试mm/dd/yyyy
使用 nightwatch 输入格式化为 Kendo React DatePicker 控件的日期字符串setValue
。似乎无论我采用什么方法来选择控件,它总是首先将光标设置在年份部分,然后键入然后只填写这四个字符。(例如,如果我提供“05/06/2016”,我在输入中看到的所有内容都是“mm/dd/0016”,并且月份和日期永远不会更新。)
如果我在月份字段上单击鼠标,则该控件在正常情况下似乎可以正常工作,光标将显示在那里,如果我键入 2 个字符,再输入 2/
个字符,/
然后最后 4 个字符,控件工作正常。硒选择控件和 DatePickers 默认行为似乎只是一个问题。
由于可访问性处理允许,我尝试使用browser.Key.LEFT_ARROW
它来查看是否可以先将光标向左移动两次。我还尝试先调用clearValue()
输入,然后从头开始输入,但在这两种情况下都没有成功。
如果可以避免,我宁愿不使用日历控件选择日期。
这是我的代码目前的样子:
任何建议表示赞赏。
nightwatch.js - 如何在 Nightwatch.js 中断言 .containsText 不区分大小写?
我如何断言 . containsText
不区分大小写Nightwatch.js
?例如,我odin
在谷歌上搜索“球体”。搜索结果有很多可能性,比如'Odin Sphere''odin sphere''ODIN SPHERE'等等,我只想用'odin sphere'来断言。这是我写的代码。
automation - 在 Nightwatch.js 中满足预期条件之前运行操作的最佳方式?
我正在自动化网站的一部分,当您单击按钮时该部分将启动工作。作业状态在页面的另一个字段中报告,但不会自动推送。最终用户需要单击页面内的刷新按钮才能查看最新状态。
像这样的东西
如果在不使用交互的情况下推送数据,则可以工作,但是因为我必须手动单击另一个按钮才能获得不起作用的最新状态。
是否有内置方法可以在 Nightwatch 中每隔 [interval here] 执行某些操作,直到 [condition true] 或 [timeout reached]?我不想使用硬暂停,因为这项工作可能需要更多或更少的时间,具体取决于服务器的感觉。