Photo by Nightwatch.js on Twitter
前言
在前两篇的文章都在介绍 Robot Framework 的自动化测试框架。
有兴趣的可以点下方连结参考参考~
鼠年全马铁人挑战 WEEK 13:Robot Framework (上)
鼠年全马铁人挑战 WEEK 14:Robot Framework (下)
而在这个礼拜换换口味改一个测试框架来介绍。
前两篇所介绍的 Robot Framework 是以 Python 为底层所设计的框架。
而这週所要分享的是以 Node.js 撰写测试的自动化测试框架 “Nightwatch”。
介绍 Nightwatch
Nightwatch.js 是针对 Web 的自动化测试框架
使用 Node.js 进行测试脚本的撰写
并使用之前提到过的 Selenium WebDriver 与各种浏览器进行沟通
有兴趣的可以点下方连结参考
鼠年全马铁人挑战 WEEK 08:Selenium WebDriver (上)
鼠年全马铁人挑战 WEEK 09:Selenium WebDriver (下)
安装 Nightwatch
安装 Node 与 npm
如果不确定是否已经安装可以透过查询版本来确认$ node -v
和 $ npm -v
如果尚未安装 Node.js 和 npm 可点选下面连结安装
官方载点 >>> nodejs.org
安装 Nightwatch
接着直接进入重头戏
为了方便使用小弟就先建立一个 nightwatch_demo 的专案资料夹$ mkdir nightwatch_demo && cd nightwatch_demo
接着透过 npm 来新增一个 package.json 的初始文件$ npm init -y
确认 package.json 建立成功后
就可以下指令来安装 nightwatch 了$ npm install nightwatch --save-dev
此时在专案底下会增加 node_modules
和 package-lock.json
的资料夹与档案
安装 WebDriver
使用 npm 指令来进行安装所需要的 WebDriver
Chrom:$ npm install chromedriver --save-dev
FireFox: $ npm install geckodriver --save-dev
安装 Selenim Server
使用 npm 指令来进行安装 Selenium Server$ npm install selenium-server --save-dev
如果想要参考更多资讯的话可以点击下方连结
鼠年全马铁人挑战 WEEK 10:Selenium Grid
执行测试
Nightwatch 带有一个 examples 包含一些样本测试的文件夹。
下面有附上一个指令,指令的测试内容为
打开搜索引擎 Ecosia.org搜索 “nightwatch”验证第一个结果是否是 Nightwatch.js 网站
$ ./node_modules/.bin/nightwatch node_modules/nightwatch/examples/tests/ecosia.js
此时专案中会再多出两个东西
一个是放置测试输出结果的资料夹 test_output
一个是 nightwatch 的组态文件 nightwatch.conf.js
如果以上的操作过程都没有遇到问题的话
恭喜你,已经成功的完成所需的前置作业
结尾
这篇稍微简单的介绍了一下 nightwatch 并完成使用前的前置作业
下一篇,小弟将会进行设定组态(Configuration) 并且执行测试
如果有疑问或是有错误,还请各位大哥大姐提点。
小弟将继续往下週迈进。 ─=≡Σ((( つ•̀ω•́)つ
参考文件:
Nightwatch.js | Node.js powered End-to-End testing framework
nightwatch - npm