1. 安装配置nightwatch 和 selenium
> npm install nightwatch --save-dev
> npm install selenium-standalone --save-dev
编写配置文件:
> selenium-conf.js
https://selenium-release.storage.googleapis.com/index.html 查看 selenium 的最新版本号
如果执行 node ./build/selenium-setup.js 安装selenium 时发现装不上的话,可以尝试修改版本号。本文编写时,用的版本是:version: '3.9.0' 。 可以正常安装。
通过 https://chromedriver.storage.googleapis.com/index.html 查看 Chrome 的 Driver 最新版本号
chrome版本号对应表:
chrome Driver | chrome |
v2.38 | v66 |
v2.33 | v60-62 |
v2.32 | v59-61 |
... | ... |
以此类推,如出现安装不上的情况,可以尝试更改版本号,尽量跟测试环境上装的chrome版本保持匹配。
我这边就出现过测试用例可以正常跑起来,但是尝试给输入框赋值的时候,setValue方法却始终无效。原因是driver版本跟本机chrome不一致导致。
更改版本号,重新 setup后,跑测试用例,一切ok。
默认使用的是css selector, 如果没有id之类的,不方便写选择器的话,可以使用Xpath ,不过需要先使用 browser.useXpath()
Assertions
-
count(selector, count)
-
attributePresent(selector, attr)
-
evaluate(fn, [args], [message])
-
checked(selector, expected)
-
focused(selector, expected)
-
hasHTML(selector, html)
-
notVisible(selector)
Commands
-
dblClick(selector)
-
waitFor(duration)
-
trigger(selector, event, [keyCode])
-
enterValue(selector, value)