30 開発共通
CI(Continuous Integration)とCD(Continuous Delivery)
下記は他サイトから引用
開発流れ
テストツールの分類(JavaScript)
Cloud Platforms and Open APIs
★Jenkinsの導入(Ubuntuの場合)
前提:Java、Maven、Tomcat
sudo service tomcat6 stop
sudo mv jenkins.war /var/lib/tomcat6/webapps/
sudo mkdir /usr/share/tomcat6/.jenkins
sudo chown -R tomcat6:tomcat6 /usr/share/tomcat6/.jenkins
sudo service tomcat6 start
http://localhost:8080/jenkins/
起動
方法1:java -jar jenkins.war http://localhost:8080/
方法2:warファイルをtomcatのwebappsに置く
★Sonar(3.7.x)の導入(Ubuntuの場合)
前提:Java、Tomcat、MySQL
sonarデータベース作成(rootより)
MySQLのDB作成サンプルを参照
方法1
mv sonar /usr/share/tomcat6
sudo chown -R tomcat6:tomcat6 sonar
sudu vi sonar/conf/sonar.properties
sonar.jdbc.url: jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true
cd sonar/war
sudo ./build-war.sh
sudo service tomcat6 stop
sudo mv sonar.war /var/lib/tomcat6/webapps/
sudo service tomcat6 start
http://localhost:8080/sonar/
方法2
sudo sonar/bin/linux-x86-64/sonar.sh start|stop
http://localhost:9000/
★TDD vs BDD
TDD テスト駆動開発 Test Driven Development
BDD 振舞駆動開発 Behaviour Driven Development
JBehave
Cucumber
import cucumber.junit.Cucumber;
import org.junit.runner.RunWith;
@RunWith(Cucumber.class)
public class CucumberTest {
}
import cucumber.annotation.en.Given;
import cucumber.annotation.en.Then;
public class HelloStepDef {
@Inject
private Hello hello;
private String name;
@Given("^A person named '([a-z]*)'$")
public void initName(final String name) {
this.name = name;
}
@Then("^The bean says '([ a-z]*)'$")
public void checkResult(final String result) {
assertEquals(result, hello.sayHello(name));
}
}
hello.feature
Feature: Hello
Scenario: Say Hello
Given A person named 'andy'
Then The bean says 'hello andy'
★JenkinsとSonarの連携(Ubuntuの場合)
Step1 Sonar Runnerのインストール
ダウンロード
http://docs.codehaus.org/display/SONAR/Installing+and+Configuring+SonarQube+Runner
sudo chown -R tomcat6:tomcat6 解凍したsonar-runner
sudo vi sonar-runner/conf/sonar-runner.properties
Step2 Jenkinsの管理 → プラグインの管理
Sonar Pluginをインストール
Step3 Jenkinsの管理 → システムの設定
「Sonar runner」を設定
「Sonar」を設定
Step4 $MAVEN_HOME/conf/settings.xmlを編集
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<!-- Example for MySQL-->
<sonar.jdbc.url>
jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true
</sonar.jdbc.url>
<sonar.jdbc.username>root</sonar.jdbc.username>
<sonar.jdbc.password>root</sonar.jdbc.password>
<!-- Default value is http://localhost:9000 -->
<sonar.host.url>
http://localhost:8080/sonar/
</sonar.host.url>
</properties>
</profile>
Step5 Cache用のフォルダを作成
sudo mkdir /usr/share/tomcat6/.sonar
sudo chown -R tomcat6:tomcat6 /usr/share/tomcat6/.sonar