js找css选择器,Nightwatch.js通过CSS选择器查找的问题(最新版本)
我查看了this question与CSS选择器的问题。接受的答案是完全离开nightwatch.js。我希望这种情况不是这样,但有问题。Nightwatch.js通过CSS选择器查找的问题(最新版本)
我已经升级到最新的可用nightwatch.js v0.9.14,但无法通过jQuery找到它在屏幕上找到的元素。
使用下面的选择器(必要的层次结构,因为它是一个jqGrid的范围内):
.click("#MedicalHistoryAmendment_sheet tbody tr:eq(1) > td:eq(4) > select")
我得到:
ERROR: Unable to locate element: "#MedicalHistoryAmendment_sheet tbody tr:eq(1) > td:eq(4) > select
using: css selector
也试图从this question(选择方法不希望这样做,因为ID是动态的):
.click('select[id="null_z01rsnload_inst_ref"]')
不符合:
ERROR: Unable to locate element: "select[id="null_z01rsnload_inst_ref"]" using: css selector
在控制台中使用jQuery:
$("#MedicalHistoryAmendment_sheet tbody tr:eq(1) > td:eq(4) > select")
返回:
[select#null_z01rsnload_inst_ref.editable, prevObject: init(1), context: document, selector: "#MedicalHistoryAmendment_sheet tbody tr:eq(1) > td:eq(4) > select"]
这是使用chromedriver.exe版本2.28在Chrome(我们的主要目标,我们目前没有为其他平台进行自动测试)。它不在iframe内。
添加“--verbose”对夜巡命令行给我:
INFO Request: POST /wd/hub/session/50a51b48-bce9-425d-a132-2d0407c8ac21/elements
- data: {"using":"css selector","value":"#MedicalHistoryAmendment_sheet tbody tr:eq(1) > td:eq(7) select"}
- headers: {"Content-Type":"application/json; charset=utf-8","Content-Length":98}
ERROR Response 500 POST /wd/hub/session/50a51b48-bce9-425d-a132-2d0407c8ac21/elements (1019ms) { sessionId: '50a51b48-bce9-425d-a132-2d0407c8ac21',
status: 32,
value:
{ message: 'invalid selector: An invalid or illegal selector was specified\n
....
任何进一步的想法,将不胜感激!
2017-04-19
u02sgb
+0
你可以试试用--verbose运行Nightwatch吗?如果它做错了什么,你可能会看到它将POST中的选择器字符串改为Selenium。否则,它只是打印返回的错误(您也将在详细输出中看到)。也许.waitForElementPresent()第一次? –
+0
一些注意事项:在某些情况下,您应该可以使用querySelector。另外,什么浏览器有这个问题,还是所有的浏览器?另外,嵌套在iframe中的元素是什么?在你操纵它的HTML元素之前,你需要明确地选择iframe。 –
+0
增加了chromedriver信息,此刻进行更多调试。 –
js找css选择器,Nightwatch.js通过CSS选择器查找的问题(最新版本)相关推荐
- 使用Nightwatch.js做基于浏览器的web应用自动测试
1 安装 1.1 安装node.js 在http://nodejs.org/ 上下载适合本机系统的安装包运行安装,注意安装选项中选择npm tool以用于后续依赖包的安装. 1.2 ...
- Vue-cli 打包CSS、JS找不到路径问题,解决方案
Vue-cli 打包CSS.JS找不到路径问题,解决方案 vue文件打包之后发现路径报错,检查了index文件之后发现js和css的路径为这样,发现static前面多了一个斜杠,所以导致路径错误- & ...
- Vue超好玩的新特性:在CSS中引入JS变量
授权转载自: 手撕红黑树 https://juejin.im/post/6856668819344392206 幻想 以前做项目的时候经常会这么想: <template><h1> ...
- Vue超好玩的新特性:在CSS中使用JS变量
前言 以前在翻译<Vue 3:2020年中状态更新>的时候,文中曾经提到过尤雨溪希望7月中旬发布RC版(候选版本),8月初发布3.0正式版. 不过现在已经八月初了怎么还是没发布呢?这个月初 ...
- JS一起学01:css复习、js基础知识、事件、参数、函数、网页换肤、if判断、className问题、浏览器执行顺序
一.html/css 1. 什么是盒子模型? padding+border+width/height 2. float 浮动 (1)浮动的特性 脱离文档流 行内 ...
- html js不触发_图文详解鼠标事件CSS:hover和JS:mouseover的区别
在工作中为了使页面更具有吸引力,前端开发人员经常会在页面中加上鼠标移入和移出的效果.鼠标移入移出的设置,一般有两种方法,一种是单纯用CSS中的hover伪类,另一种可以用JS 中的DOM事件,即onm ...
- js写css字体,js如何写出css动画 ?js写css动画的方法(代码)
本篇文章给大家带来的内容是关于js如何写出css动画 ?js写css动画的方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 使用setTimeout()或者setInter ...
- css框架和js框架_如何选择正确CSS工具包和框架
css框架和js框架 A Q&A about Susy and other toolkits, with Miriam Suzanne. 与Miriam Suzanne一起有关Susy和其他工 ...
- vue中如何实现滚动页面的动画-animate.css和wow.js
两种方法: 第一种方法:npm安装包animate.css和wow.js 第二种方法:静态资源的引入 第一种方法: 1.引入静态资源包 静态资源包,需要注意的是.必须放到static文件夹下面 < ...
最新文章
- 美多商城之用户中心(收货地址3)
- 全过程实现一个最简单的FPGA项目之PWM蜂鸣器控制
- oracle日期格式更新_oracle 日期格式
- JavaScript实现heapsort堆排序算法(附完整源码)
- python中比较运算符用于比较两个数_python中的运算和运算符
- 关于DPM(Deformable Part Model)算法中模型结构的解释
- AIX 系统下做 rootvg
- ubuntu 16.04无法上网
- 马云:阿里巴巴的最高机密是我们的组织架构图
- 波前边缘检测 Wavefront Frontier Detector
- 总结八:面试程序员前需要的准备工作
- 百度AI攻略:EasyDL专业版
- tdd干扰波形_LTE中5大干扰源的产生分析
- Mind quantum 基础知识学习笔记(1)
- quartus仿真系列0:基于原理图仿真的基本操作
- 骨传导耳机的原理是什么,什么人群适合用骨传导耳机
- Blogger Spaces, 随心所欲的blog服务提供?
- 线性,整数,非线性,动态规划
- 面向对象系统分析与设计,让你真正了解什么是面向对象(傻瓜式讲解)
- OPC UA性能评估