我查看了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选择器查找的问题(最新版本)相关推荐

  1. 使用Nightwatch.js做基于浏览器的web应用自动测试

    1        安装 1.1   安装node.js 在http://nodejs.org/ 上下载适合本机系统的安装包运行安装,注意安装选项中选择npm tool以用于后续依赖包的安装. 1.2  ...

  2. Vue-cli 打包CSS、JS找不到路径问题,解决方案

    Vue-cli 打包CSS.JS找不到路径问题,解决方案 vue文件打包之后发现路径报错,检查了index文件之后发现js和css的路径为这样,发现static前面多了一个斜杠,所以导致路径错误- & ...

  3. Vue超好玩的新特性:在CSS中引入JS变量

    授权转载自: 手撕红黑树 https://juejin.im/post/6856668819344392206 幻想 以前做项目的时候经常会这么想: <template><h1> ...

  4. Vue超好玩的新特性:在CSS中使用JS变量

    前言 以前在翻译<Vue 3:2020年中状态更新>的时候,文中曾经提到过尤雨溪希望7月中旬发布RC版(候选版本),8月初发布3.0正式版. 不过现在已经八月初了怎么还是没发布呢?这个月初 ...

  5. JS一起学01:css复习、js基础知识、事件、参数、函数、网页换肤、if判断、className问题、浏览器执行顺序

    一.html/css 1. 什么是盒子模型?     padding+border+width/height 2. float 浮动 (1)浮动的特性         脱离文档流         行内 ...

  6. html js不触发_图文详解鼠标事件CSS:hover和JS:mouseover的区别

    在工作中为了使页面更具有吸引力,前端开发人员经常会在页面中加上鼠标移入和移出的效果.鼠标移入移出的设置,一般有两种方法,一种是单纯用CSS中的hover伪类,另一种可以用JS 中的DOM事件,即onm ...

  7. js写css字体,js如何写出css动画 ?js写css动画的方法(代码)

    本篇文章给大家带来的内容是关于js如何写出css动画 ?js写css动画的方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 使用setTimeout()或者setInter ...

  8. css框架和js框架_如何选择正确CSS工具包和框架

    css框架和js框架 A Q&A about Susy and other toolkits, with Miriam Suzanne. 与Miriam Suzanne一起有关Susy和其他工 ...

  9. vue中如何实现滚动页面的动画-animate.css和wow.js

    两种方法: 第一种方法:npm安装包animate.css和wow.js 第二种方法:静态资源的引入 第一种方法: 1.引入静态资源包 静态资源包,需要注意的是.必须放到static文件夹下面 < ...

最新文章

  1. 美多商城之用户中心(收货地址3)
  2. 全过程实现一个最简单的FPGA项目之PWM蜂鸣器控制
  3. oracle日期格式更新_oracle 日期格式
  4. JavaScript实现heapsort堆排序算法(附完整源码)
  5. python中比较运算符用于比较两个数_python中的运算和运算符
  6. 关于DPM(Deformable Part Model)算法中模型结构的解释
  7. AIX 系统下做 rootvg
  8. ubuntu 16.04无法上网
  9. 马云:阿里巴巴的最高机密是我们的组织架构图
  10. 波前边缘检测 Wavefront Frontier Detector
  11. 总结八:面试程序员前需要的准备工作
  12. 百度AI攻略:EasyDL专业版
  13. tdd干扰波形_LTE中5大干扰源的产生分析
  14. Mind quantum 基础知识学习笔记(1)
  15. quartus仿真系列0:基于原理图仿真的基本操作
  16. 骨传导耳机的原理是什么,什么人群适合用骨传导耳机
  17. Blogger Spaces, 随心所欲的blog服务提供?
  18. 线性,整数,非线性,动态规划
  19. 面向对象系统分析与设计,让你真正了解什么是面向对象(傻瓜式讲解)
  20. OPC UA性能评估

热门文章

  1. 98k用计算机上的数字是什么表示,98k钢琴简谱数字教程跳几级
  2. Threejs之粒子和透明那点事
  3. XShell初次连接WSL2教程
  4. 【Redis】Redis主从同步中数据同步原理
  5. Struts2之实现文件上传与下载
  6. java 注销后不能后退_注销了,就别再来找我
  7. 岁末盘点物联网,Iot与芯片携手建生态,RT-Thread开发者大会见闻
  8. Typora历史版本下载链接
  9. cobbler自动化安装系统及配置
  10. python 爬取电子书_利用Python3爬取下载bookset网站的kindle电子书