🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

CI(継続的インテグレーション)

CI(継続的インテグレーション)は、アプリ開発においてビルドとテストを繰り返すことで品質改善と納期短縮を図る手法です。JenkinsやTravis CIなどの専用ツールを利用してプロセスを自動化・半自動化して効率的に実施します。

Q&A

解決済

2回答

1072閲覧

GitHub Actionsで単体testを行わせたところ失敗し、その際に終了codeの報告しかしてくれない

gottadiveintopy

総合スコア736

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

CI(継続的インテグレーション)

CI(継続的インテグレーション)は、アプリ開発においてビルドとテストを繰り返すことで品質改善と納期短縮を図る手法です。JenkinsやTravis CIなどの専用ツールを利用してプロセスを自動化・半自動化して効率的に実施します。

0グッド

0クリップ

投稿2020/12/25 09:34

編集2020/12/25 10:11

GitHub Actionsを用いて自作のpython用libraryの単体testをしようとしているのですが、その際のerrorが Error: Process completed with exit code 102. だけで他に手掛かりが無いため困っています。原因のわかる人居ませんか?

そのrepository

追記

その自作のlibraryはKivyというGUI libraryに依存しているのですが、別のKivyに依存していないlibraryではGitHub Actionsによる単体testはうまくいっているためKivyが何らかの影響を与えているのではと思っています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

Kivy公式repositoryの設定file達(ubuntu_ci.sh, test_ubuntu_python.yml)を参考にGitHub Actionsの設定fileに以下のstepと環境変数を加えることで無事GUIを含むtestが実行できました。

yaml

1jobs: 2 unit_test: 3 env: 4 DISPLAY: ':99.0' 5 steps: 6 - name: Setup env 7 run: | 8 sudo apt-get update 9 sudo apt-get -y install xvfb pulseaudio xsel 10 /sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -screen 0 1280x720x24 -ac +extension GLX

投稿2020/12/26 06:15

gottadiveintopy

総合スコア736

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gottadiveintopy

2020/12/26 06:19

おかげで解決できました、ありがとうございます。 m(_ _)m
guest

0

ベストアンサー

Linux で GUI を表示するには最低限 X11 サーバーが起動している必要があります。その他にも色々準備が必要でしょう(多分)。ソースコードを拝見させていただきましたが Widget という部分で実際に GUI 部分を生成しようとして落ちているのだと思います。そりゃディスプレイがないんですからテストのしようが……というわけです。そのへんのテストどうしてるんだろうなという疑問はわたしも興味があるところですが、最近は GUI も JavaScript で書くので Chrome 互換のヘッドレスブラウザ立てて実行、というところなんでしょうねえ。

投稿2020/12/25 12:59

A_kirisaki

総合スコア2853

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gottadiveintopy

2020/12/26 08:57 編集

ありがとうございます、全くその通りでWidgetを使うtestに差し掛かったところで落ちてますね。他に成功しているtestがあるのを見て「Kivyをtestで用いる際に特別な処置は要らない」と思い込んでました ????。とりあえず (A)GUIに関わるtestのやり方を探る (B)落ちているtestをGUIを利用しないように書き直す などを試してみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問