2017-06-20 42 views
6

我開始與詹金斯。如何創建jenkins作業,誰必須對提交執行測試?

我想,每次我做一個git commit(或推?)時,我的離子項目的茉莉花測試已經執行,並且必須在提交完成之前工作。

在現實中,它有2個問題:

  • 如何與詹金斯執行茉莉測試?

在這一刻我執行與測試:

npm test 
  • 我怎麼能與一個提交(或推送)執行這個測試呢?

感謝 問候

+0

嗨。我從來沒有使用離子,但詹金斯你怎麼執行任務?所以對於我們的android build(也在jenkins上),我們有一個gradle插件,你可以執行諸如「build」之類的任務。如果你有這樣的選擇,那麼將不可能爲任務添加「npm測試」,它應該工作? – Smashing

+0

我是否正確?你想在提交完成之前運行測試嗎? –

回答

1

a ticket有關添加此功能。

最後票關閉

slackersoft 2016年12月

評論2在這一點上,我覺得更有意義,離開代碼做你的規格和生產的觀看代碼到專門爲此構建的許多外部庫之一。

的涉及外部庫可以是:

1

有兩種方法來實現任務。

  1. GIT鉤:從GIT提交之後或推執行茉莉測試
  2. 詹金斯觸發與GIT鉤:從詹金斯檢查回購並執行茉莉測試從GIT

魚鉤

尋找你的git倉庫中的隱藏目錄,你會發現一個名爲「hooks」的目錄,裏面有很多鉤子的例子:

首先列出你的回購主目錄的內容:

ls -ltra 

你應該看到:

[email protected] ~/-argentina/.git 
$ vim hooks/ 
applypatch-msg.sample  pre-applypatch.sample  pre-push.sample   update.sample 
commit-msg.sample   pre-commit.sample   pre-rebase.sample 
post-update.sample   prepare-commit-msg.sample pre-receive.sample 

你有how to setup hooks here整體指導。

在你的情況可能更新會做的事:

更新更新腳本是非常相似的前收到腳本, ,只不過它運行一次,每個分支的推進器試圖 更新。

從詹金斯觸發與GIT鉤

在這其中,你會設置你的詹金斯項目構建觸發以「輪詢SCM」,但沒有指定的時間表。

然後用後期收到來自GIT鉤通知詹金斯工作有關的變化:

http://yourserver/jenkins/git/notifyCommit?url=<URL of the Git repository>?token=<get token from git to build remotely> 

我發現,例如here

運行茉莉花測試

我不知道你使用的O.S但我希望這是一個美麗的Linux機器。

您可以與詹金斯幾乎相同。您需要考慮用戶(您的用戶)及其權限,並檢查運行Jenkins實例的用戶是否被允許執行相同的操作。

只需創建一個新的詹金斯項目,並添加與測試一個shell執行的步驟,就像你說:

npm test 

有關於您的特定環境中的許多問題,但我認爲這將是一個很好的指導爲你。

相關問題