我有一個在Groovy中做的小工作。目前我可以在命令行上測試它,但我需要將它與Jenkins服務器集成。因此,我曾想過將它與Gradle集成,以Jenkins可以讀取的標準格式生成測試輸出。 (請考慮我是Groovy,Gradle,Jenkins和JVM環境的新手)。從普通Groovy移動到Gradle
目前我所有的測試都在一個MyTest
類中,這個類擴展了GroovyTestCase
。我可以像一個小bash腳本運行
#! /bin/bash
DIR=$(cd "$(dirname "$0")" && pwd)
LIBS="$DIR/lib/*"
groovy -cp "$LIBS" path/to/MyTest.groovy
還有,我不要在此佈局一樣多的東西:
- 首先,我想測試分爲多個類別,並加入他們到一個測試套件,但測試案例有一個優勢,它可以自動運行在Groovy
- 第二,正如我所說,我想能夠獲得一份測試報告,由詹金斯
- 第三,我不知道是否將所有需要的罐子放入01中目錄是一個很好的做法 - 可能不是。
Gradle看起來正是我需要的工具。但是我發現的所有文檔都假定了以前有關Java,Ant,Maven和整個生態系統的知識。
創建工作Gradle項目的基本步驟是什麼?
我重組了目錄結構的建議here,但我不知道如何聲明依賴。例如本的build.gradle
apply plugin: 'groovy'
repositories {
mavenCentral()
}
dependencies {
groovy group: 'org.codehaus.groovy', name: 'groovy', version: '1.8.0'
runtime group: 'org.apache.log4j', name: 'log4j', version: '1.2.0'
}
我得到錯誤
unable to resolve class org.apache.log4j.Level
@ line 5, column 1.
import org.apache.log4j.Level
^
如果我改變倉庫來
repositories {
mavenCentral()
flatDir { dirs 'lib' }
}
從我lib
目錄中獲取log4j
,我得到
A problem occurred evaluating root project 'alfred'.
Cause: Could not find method flatDir() for arguments [[email protected]] on root project 'alfred'.
發佈您的gradle構建腳本和實際發生的錯誤可能會有所幫助... – 2012-07-17 16:03:13
事實上,我意識到我已經在其他地方複製了一個基本的build.gradle,其中包含'groovy group':org.codehaus.groovy' ,名稱:'groovy',版本:'1.7.0''。我改變了'groovy組:'org.codehaus.groovy',名字:'groovy',版本:'1.8.0',現在編譯錯誤消失了。我會試驗更多並更新問題 – Andrea 2012-07-17 16:05:40