摘要:是一個(gè)自動(dòng)化測(cè)試框架,被深度整合進(jìn)來(lái)。這篇文章就來(lái)帶著大家入門搭建這么一個(gè)測(cè)試框架。項(xiàng)目配置默認(rèn)使用項(xiàng)目根目錄的作為配置文件。官網(wǎng)也有另外一種配置文件的格式就是。
nightwatch.js是一個(gè)web-ui自動(dòng)化測(cè)試框架,被vue-cli深度整合進(jìn)來(lái)。如果一個(gè)項(xiàng)目是基于vue-cli搭建的,基本可以做到開箱即用。
但是我們不可能一直都使用vue-cli。因?yàn)樗芏鄷r(shí)候不能夠滿足我們的定制化需求。我們很多時(shí)候會(huì)對(duì)構(gòu)建框架進(jìn)行定制,或者完全重新搭建。這個(gè)時(shí)候整合進(jìn)來(lái)nightwatch就會(huì)很困難。這篇文章就來(lái)帶著大家入門搭建這么一個(gè)測(cè)試框架。
所需環(huán)境首先在項(xiàng)目里面安裝nightwatch,切換到項(xiàng)目目錄
npm intall nightwatch -D
安裝這個(gè)還不夠,還需要安裝selenium-server,同樣可以使用npm安裝
npm install selenium-server -D
selenium-server是基于Java開發(fā)的,作用是用來(lái)連接瀏覽器的。所以安裝selenium-server之前需要安裝java。如何安裝Java?
除此之外還需要安裝一個(gè)瀏覽器驅(qū)動(dòng)器,一般我們使用chrome做測(cè)試
npm install chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedrive -D
直接安裝chromedriver會(huì)提示安裝不成功,需要手動(dòng)指定鏡像地址
至此需要下載的部分已經(jīng)下載完成。
項(xiàng)目配置nightwatch默認(rèn)使用項(xiàng)目根目錄的nightwatch.conf.js作為配置文件。官網(wǎng)也有另外一種配置文件的格式就是nightwatch.json。這里我們使用js的配置方式,因?yàn)楦袷礁`活。
下面這個(gè)就是一個(gè)簡(jiǎn)單的配置文件。
module.exports = { "src_folders": [ "e2e/case" ], "output_folder": "reports", "custom_commands_path": "", "custom_assertions_path": "", "page_objects_path": "", "globals_path": require("./e2e/config/global.config").path, "selenium": { "start_process": true, "server_path": require("selenium-server").path, "log_path": "", "host": "127.0.0.1", "port": 4444, "cli_args": { "webdriver.chrome.driver": require("chromedriver").path } }, "test_settings": { "default": { "launch_url": "http://localhost", "selenium_port": 4444, "selenium_host": "localhost", "silent": true, "screenshots": { "enabled": false, "path": "" }, "desiredCapabilities": { "browserName": "chrome", "marionette": true } }, "chrome": { "desiredCapabilities": { "browserName": "chrome" } }, "edge": { "desiredCapabilities": { "browserName": "MicrosoftEdge" } } } }
src_folders:表示的就是case所在的文件夾
output_folder:代表的是報(bào)告輸出的文件夾
selenium下面的server_path:代表的是selenium-server的安裝路徑
selenium下面的start_process:代表的是是否自動(dòng)啟動(dòng)selenium——server,入股設(shè)為false,不會(huì)自動(dòng)啟動(dòng)server。
"cli_args" : { "webdriver.chrome.driver" : "", "webdriver.gecko.driver" : "", "webdriver.edge.driver" : "" }
cli_args下面的driver表示幾個(gè)driver的安裝路徑,分別安裝成功就可以了
test_settings是傳給nightwatch實(shí)例的數(shù)據(jù),這里面可以配置多個(gè)環(huán)境,default是必須有的,其他環(huán)境可以自行配制。
nightwatch --env default
然后我們?cè)陧?xiàng)目里運(yùn)行以上命令。
在windows發(fā)現(xiàn)報(bào)錯(cuò)了,運(yùn)行不起來(lái)的。我們需要在package.json下面配置一下
"scripts": { "e2e": "nightwatch --env default", },
這就可以正常運(yùn)行了。
如果需要看到真實(shí)的效果,我們?cè)赾ase文件夾下面創(chuàng)建一些case就可以了
比如:
module.exports = { "Test login": function (browser) { browser .windowMaximize() .url("https://trans.qa.17u.cn/saas") .waitForElementVisible(".login", 3000) .assert.urlContains("/saas/login") } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/98418.html
摘要:建立的配置信息。在此我們安裝的以便使用進(jìn)行測(cè)試。如果您在搭建過程中遇到困難,您可以從獲取在下已經(jīng)搭建好的接下來(lái)接下來(lái)就是專心寫測(cè)試用例了,距離成功越來(lái)越近了不過今天就到這里結(jié)束,我們下一章見下一篇搭建自己的前端自動(dòng)化測(cè)試腳手架三 上一篇:搭建自己的前端自動(dòng)化測(cè)試腳手架(一)By LancerComet at 18:38, 2016.07.17. 歡迎轉(zhuǎn)載,轉(zhuǎn)載時(shí)還請(qǐng)保留作者署名。 嗨,...
摘要:本身項(xiàng)目也是使用來(lái)測(cè)試的。一個(gè)簡(jiǎn)易的模式的配置如下的分為四個(gè)部分在實(shí)例上以開頭的行為驅(qū)動(dòng)測(cè)試風(fēng)格的接口,及以上版本可用。例如以開頭的兩套相同的方法庫(kù),區(qū)別是如果斷言失敗則退出整個(gè)測(cè)試用例所有步,則打印后繼續(xù)進(jìn)行。 E2E測(cè)試 E2E(end to end)測(cè)試是指端到端測(cè)試又叫功能測(cè)試,站在用戶視角,使用各種功能、各種交互,是用戶的真實(shí)使用場(chǎng)景的仿真。在產(chǎn)品高速迭代的現(xiàn)在,有個(gè)自動(dòng)化測(cè)...
摘要:是一個(gè)易于使用的,基于平臺(tái)的瀏覽器自動(dòng)化測(cè)試解決方案。它使用強(qiáng)大的來(lái)在元素上執(zhí)行命令和斷言。只需使用和選擇器,不需要初始化其他對(duì)象和類,您只需要編寫測(cè)試規(guī)范。項(xiàng)目地址在安裝安裝然后運(yùn)行測(cè)試的測(cè)試使用了測(cè)試框架寫成,運(yùn)行編撰 showImg(http://segmentfault.com/img/bVbXaE); Nightwatch.js Nightwatch.js 是一個(gè)易于使用...
摘要:我們將用集成測(cè)試來(lái)結(jié)束我們的測(cè)試部分。作為對(duì)集成測(cè)試的一個(gè)提醒它是自動(dòng)化我們的實(shí)際用戶在使用我們的應(yīng)用時(shí)體驗(yàn)到的體驗(yàn)的過程。出于我們的目的我們將只使用上面的基本配置因?yàn)樗呀?jīng)足夠讓集成測(cè)試?yán)^續(xù)進(jìn)行。 本文轉(zhuǎn)載自:眾成翻譯譯者:iOSDevLog鏈接:http://www.zcfy.cc/article/3808原文:https://www.fullstackreact.com/30-d...
摘要:如果您在進(jìn)行模擬鼠標(biāo)的測(cè)試,您的鼠標(biāo)指針可能會(huì)干擾您的測(cè)試,因此建議運(yùn)行測(cè)試后將您的指針移動(dòng)至屏幕外部,以避免干擾到瀏覽器測(cè)試。 上一篇:搭建自己的前端自動(dòng)化測(cè)試腳手架(二)By LancerComet at 23:47, 2016.07.22. 歡迎轉(zhuǎn)載,轉(zhuǎn)載時(shí)還請(qǐng)保留作者署名。 這是最后一章了!(???)之前我們配置好了我們的腳手架工具,現(xiàn)在可以編寫測(cè)試用例了! 開始編寫測(cè)試用例 ...
閱讀 2615·2021-11-02 14:39
閱讀 4342·2021-10-11 10:58
閱讀 1468·2021-09-06 15:12
閱讀 1853·2021-09-01 10:49
閱讀 1339·2019-08-29 18:31
閱讀 1890·2019-08-29 16:10
閱讀 3348·2019-08-28 18:21
閱讀 879·2019-08-26 10:42