web-dev-qa-db-ja.com

Docker内のJenkinsでKatalonテストスイートを実行するにはどうすればよいですか?

Katalonテストスイートのセットアップがあり、KatalonスタジオがインストールされているマシンのUIおよびCLIから正常に実行されます。

DockerコンテナでJenkinsCIサーバーを実行していますが、そのJenkinsサーバーでテストスイートを実行するジョブをセットアップしたいと思います。

Katalonジョブを実行できるように、Jenkinsサーバーでどのランタイムが必要ですか?このためのJenkinsのランタイムまたはプラグインはありますか?

そうでない場合は、SonarQubeのもののように、jenkinsを介してリモートでジョブを実行するために使用できるKatalonのDockerコンテナはありますか?

10
mikeb

[〜#〜]編集[〜#〜]-カタロンサポートからの新しい回答

Katalonサポートから次のような新しい応答がありました。

まず第一に、あなたの質問に基づいて適切なものを提供していないので、私の答えを申し訳ありません。もう一度質問を確認しましたが、Katalon Studioにはコンソールモード実行用のLinuxバージョン( http://download.katalon.com/4.8.0/Katalon_Studio_Linux_64-4.8.tar.gz )があります。理想的には、dockerfileにパッケージ化します。

これはもっと似ています。ここにあるドキュメントを使用すると、Dockerで動作させるのは非常に簡単です。

https://docs.katalon.com/display/KD/Console+Mode+Execution

この答えがあなたの質問をよりよく解決することを願っています:)。

編集終了


[〜#〜]オリジナル[〜#〜]

Katalon StudioのWebサイトで同じ質問をするチケットを作成しましたが、次の(笑える)応答がありました。

まず第一に、KatalonStudio用のDockerfileはありません。これを行うのは困難で複雑であり、将来的に行う予定もありません:)。ただし、この場合に適用可能な調整があるかどうかを確認するために、お客様の要求を考慮して検討します。

言い換えれば、Dockerソリューションはありません。私が行ったプロトタイピングで良い結果が得られたので、CI関連のものに使用できないのは残念です。

しかたがない。

8
mikeb

Katalon StudioにはLinux専用のバージョンがあります( http://download.katalon.com/4.8.0/Katalon_Studio_Linux_64-4.8.tar.gz )。 Katalon Studioの コンソールモード を利用します。もちろん、Jenkinsコンテナ内にパッケージ化することもできます。このアプローチはあなたのシナリオに適応します:)。

6
Zarashima

こことDockerHubで見つけることができます。しかし、私はそれが電子メール/パスワードによってアクティブ化される必要があるのが好きではありません。そのため、ビルドが遅くなります。アクティブ化されたKatalonスタジオを含む独自のDockerイメージを作成するつもりです。彼らはCIをあまりうまくサポートしていないようです。

https://github.com/katalon-studio/katalon-studio-docker

2
Giang Dao

わかりました。「Sudodockercp/sourcefolder/Katalon_folder/ContainerId:/ destination_folder」を使用してください。

スクリプトについても同じことが言えます。次のステップは、Firefox/geckodriverをインストールすることです。

0
mdietrich

受け入れられた回答は2年以上に及ぶため、いくつかの変更が加えられ、カタロンの公式Dockerイメージが Docker Hub にあります。

docker pull katalonstudio/katalon

さまざまなCIツールのサンプルプロジェクト構成については、 ここ にアクセスしてください。

Jenkinsファイルのサンプルは次のとおりです。

pipeline {
    agent {
        docker {
            image 'katalonstudio/katalon'
            args "-u root"
        }
    }
    stages {
        stage('Test') {
            steps {
                sh 'katalon-execute.sh -browserType="Chrome" -retry=0 -statusDelay=15 -testSuitePath="Test Suites/TS_RegressionTest"'
            }
        }
    }
    post {
        always {
            archiveArtifacts artifacts: 'report/**/*.*', fingerprint: true
            junit 'report/**/JUnit_Report.xml'
        }
    }
}
0
Mate Mrše