본문으로 건너뛰기

루틴 편집

Dogu 콘솔에서 두가지 방법으로 루틴을 작성할 수 있습니다.

Prerequisites

루틴을 작성하고 실행하기 위해서는 테스트 스크립트가 있는 Git 저장소를 연동해야 합니다.

자세한 내용은 Git 연동하기 문서를 참고하세요.

GUI 에디터로 작성하기

YAML 문법이 익숙하지 않은 사용자를 위해 GUI 에디터를 제공합니다. GUI 에디터에서는 앱 설치 및 실행, 테스트 스크립트 실행과 같은 기본적인 기능을 사용할 수 있습니다.

GUI 에디터에서 제공하지 않는 액션이나 인자 등을 사용하려면 YAML 에디터를 사용해야 합니다.

  1. 루틴 이름을 입력합니다.
  2. 작업을 추가 또는 삭제하거나, 위치를 변경합니다.
  3. 작업 내 스텝을 추가 또는 삭제하거나, 위치를 변경합니다.

작업

작업은 선행작업으로 연결되지 않으면 병렬로 실행됩니다.

  1. 작업 이름
    • 작업 이름을 입력하거나, 수정할 수 있습니다.
  2. 선행 작업
    • 작업을 실행하기 전에 선행 작업을 선택할 수 있습니다. 여러 작업을 선택할 수 있습니다.
    • 선택한 작업이 완료되면 해당 작업이 실행됩니다.
  3. 브라우저 또는 앱 패키지 이름
    • 웹 템플릿: 작업이 실행될 브라우저를 선택할 수 있습니다.
    • 모바일 앱, 게임 템플릿: 작업이 실행될 앱 패키지 이름을 선택할 수 있습니다.

      패키지 이름이 같은 앱 목록에서 최신 빌드 버전의 앱을 자동으로 다운로드합니다.

  4. 디바이스
    • 작업이 실행될 디바이스 또는 디바이스 태그를 선택할 수 있습니다.
    • 그룹 실행을 비활성화 한 경우, 선택된 태그가 있는 디바이스 중 랜덤으로 하나가 실행됩니다. 디바이스를 선택한 경우 디바이스가 실행됩니다.
    • 그룹 실행을 활성화 한 경우, 프로젝트에 할당된 디바이스나 퍼블릭 디바이스에서 선택한 태그가 있는 디바이스가 모두 실행됩니다.
  5. 디바이스 화면 녹화
    • 해당 작업을 실행할 때 디바이스 화면을 녹화할지 선택합니다.
    • 녹화 옵션을 활성화하면 디바이스 작업 결과 페이지에서 영상을 볼 수 있습니다.

스텝

스텝은 순차적으로 실행됩니다.

  1. 스텝 이름
    • 스텝 이름을 입력하거나, 수정할 수 있습니다.
  2. 스텝 유형
    • 액션, 쉘 명령을 선택할 수 있습니다.
  3. 액션
    • 해당 스텝이 어떤 일을 하는지 정의합니다.
    • GUI 에디터에서는 3가지 옵션을 제공합니다.
      • Run test(권장): 테스트 스크립트를 수행합니다.
      • Prepare: 앱을 설치하고 실행합니다. 작업에서 설치할 앱 버전을 선택하세요.
      • Checkout: Git 저장소에서 연동된 레포지토리를 가져옵니다.
  4. 쉘 명령
    • 해당 스텝에서 실행할 쉘 명령을 입력합니다.

YAML 에디터로 작성하기

YAML 에디터로 GUI 에디터에서 제공하지 않는 다양한 액션, 인자들을 사용할 수 있습니다.

정보

루틴 YAML 문법은 루틴 YAML 문법을 참고하세요.

example.yaml
name: sample routine

on:
workflow_dispatch:

env:
YOUR_CUSTOM_ENV: 'custom env global'

jobs:
test-android:
needs:
runs-on:
group: android
appVersion:
android: 1.0.0
steps:
- name: test-tutorial
uses: dogu-actions/run-test
cwd: appium/typescript/jest
with:
checkout: true
clean: true
environment: node
command: |
yarn install
yarn test
- name: custom-cli
run: echo hi
env:
YOUR_CUSTOM_ENV: 'custom job env'

test-web:
needs:
runs-on:
- my-device-name
browserName: chrome
steps:
- name: chrome-test
uses: dogu-actions/run-test
cwd: selenium/python/pytest
with:
checkout: true
clean: true
environment: python
command: |
pip install -r requirements.txt
pytest test.py