單元測試(三)

前言

以前談了在本地監測代碼的變更而後自動進行單元測試的流程,那若是我連本地服務器都不想開,那要怎麼辦呢?node

這一次就來談談如何利用Travis CI來作雲端單元測試。chrome

Travis CI

Travis CI 是經過綁定 Github 上面的項目,只要有新的代碼,就會自動抓取,搭建環境並進行測試,若是測試結果有什麼變化,就會發郵件通訊你。npm

.travis.yml

Travis CI 要求項目的根目錄下有一個 .travis.yml 文件,裏面是配置信息。瀏覽器

本項目的配置信息以下bash

language: node_js
node_js:
- "8"
addons:
  chrome: stable
sudo: required
before_script:
- "sudo chown root /opt/google/chrome/chrome-sandbox"
- "sudo chmod 4755 /opt/google/chrome/chrome-sandbox"
複製代碼

首先定義語言爲node_js,由於測試的時候是用的 npm 命令。服務器

而後定義node_js的版本,這裏支持多版本,能夠添加多個版本。單元測試

由於項目是跑在瀏覽器上面的,因此須要引入一個瀏覽器,設置下瀏覽器版本,這裏設置的穩定版。測試

接下來從sudo開始一直到最後的幾句配置,這是由於我在測試的過程當中,一直報錯,而後處處搜索解決方案,有我的告訴我要加這幾句,而後我就加上了。ui

使用

首先去官網註冊個帳號登陸上去。google

而後選擇對應的倉庫,點擊按鈕使其變爲綠色狀態,表示設置成功。

這時候稍等一會,而後返回首頁,就可看到已經在開始測試任務了,若是沒有開始,就稍微改動點項目文件,再次提交一下。

從圖中能夠看到,單元測試沒有徹底經過,有出錯的位置,也就是上一次咱們爲了看監聽命令的效果故意改錯的位置,咱們將其改正過來,再次提交代碼到 Github,再看來結果。

這下就所有經過了。

接下來看看 Travis CI 的工做日誌,看看它到底幹了什麼。

它會開機,下載 chrome,下載 Github 的代碼,安裝依賴,而後就開啓測試命令,以後就和在本地測試同樣的了,測試結束以後會將結果發郵件通知咱們(若是一直成功,後面就不發郵件通知)。

咱們直接點開成功的郵件,看一下。

這就表示 Travis CI 幫咱們執行了單元測試,並且測試所有經過。

後續

第一次跑完成功以後,後面每次 push 代碼,Travis CI 都會進行一次測試,若是失敗了,就會郵件通知你。

相關文章
相關標籤/搜索