Django3×Nightwatch×Github Actions에서 최소 구성의 e2e 실행
10183 단어 Nightwatch장고GitHubActions
개요
장고에서 e2e 테스트를 Github Actions에서 실행하고 싶습니다 ...
그런 식으로 생각할 때 어쩌면 있을지도 모릅니다...
최소 구성, 폭속, Nigthwatch, Github Actions에서 장고의 e2e 테스트를 실행해 봅시다.
환경
파이썬 - 3.8.1
장고 - 3.1.4
Node - 12.x
Nightwatch - 1.5.1
우선 장고
장고를 최소 구성으로 준비합시다.
python -m django startproject mysite
cd mysite
python manage.py runserver
네.
갓 태어난 장고의 시작을 확인할 수 있었습니까?
3.1이므로 asgi.py도 있습니다.
다음 Nightwatch
설치
Nightwach를 설치합니다.
npm install nightwatch
package.json 준비
package.json
명령을 추가합니다.
"scripts": {
"e2e": "nightwatch"
}
테스트 코드
최소 구성의 테스트 코드를 추가하겠습니다.tests/e2e/test.js
를 다음과 같이 씁니다.
module.exports = {
'@tags': ['sample'],
'最小構成のテストだよ:for github actions': function (client) {
client
.url('http://localhost:8000')
.waitForElementVisible('body', 1000)
.assert.title('Django: the Web framework for perfectionists with deadlines.')
},
}
Nightwatch 설정 파일
그리고 Nightwatch의 설정 파일인 nightwatch.json
를 준비합시다.src_folders
에 테스트 코드를 배치한 위치.
대상은 chrome으로 둡시다.
{
"src_folders" : ["tests/e2e"],
"webdriver" : {
"start_process": true,
"server_path": "node_modules/chromedriver/bin/chromedriver",
"port": 9515
},
"test_settings": {
"default": {
"desiredCapabilities": {
"browserName": "chrome",
"javascriptEnabled": true,
"chromeOptions": {
"args": ["--headless"]
}
}
}
}
}
이제 소스를 준비했습니다.
이것을 github에 커밋하십시오.
마지막으로 Github Actions
해당 프로젝트에서 Github Actions 탭을 엽니다.
그리고 장고의 워크플로를 선택합니다.
Django는 테스트 실행을 위한 워크플로우를 만듭니다.
이 녀석을 조금 이지 갑니다.
node를 사용하도록 추기해 갑니다.
branches: [ main ]
## add
env:
NODE_VERSION: '12.x'
## add
jobs:
build:
그리고 설치의 주위에.
nodemodules는 캐시해 둡시다.
pip install -r requirements.txt
## add
- name: Cache node modules
uses: actions/cache@v2
env:
cache-name: cache-node-modules
with:
path: ~/.npm
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v1
with:
node-version: ${{ env.NODE_VERSION }}
- name: npm install, build
run: |
npm install
## add
그리고 runserver와 Nightwatch의 실행입니다!
## add
- name: run server
run: python manage.py runserver >/dev/null 2>&1 &
- uses: nanasess/setup-chromedriver@master
- name: npm test
run: |
npm run e2e
## add
그러면...
바삭바삭~~ 하고 실행되어 갔습니다.
요약
어땠습니까?
쉽게 실행할 수 있는지 확인해 주셨습니까?
e2e 테스트 ... 아무래도 사용하지 않으면 안되는 경우에 참고하실 수 있으면 다행입니다.
오늘의 소스
jrfk/minimum-django-nightwatch
Reference
이 문제에 관하여(Django3×Nightwatch×Github Actions에서 최소 구성의 e2e 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/jrfk/items/c6efbeeae6363070929c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
파이썬 - 3.8.1
장고 - 3.1.4
Node - 12.x
Nightwatch - 1.5.1
우선 장고
장고를 최소 구성으로 준비합시다.
python -m django startproject mysite
cd mysite
python manage.py runserver
네.
갓 태어난 장고의 시작을 확인할 수 있었습니까?
3.1이므로 asgi.py도 있습니다.
다음 Nightwatch
설치
Nightwach를 설치합니다.
npm install nightwatch
package.json 준비
package.json
명령을 추가합니다.
"scripts": {
"e2e": "nightwatch"
}
테스트 코드
최소 구성의 테스트 코드를 추가하겠습니다.tests/e2e/test.js
를 다음과 같이 씁니다.
module.exports = {
'@tags': ['sample'],
'最小構成のテストだよ:for github actions': function (client) {
client
.url('http://localhost:8000')
.waitForElementVisible('body', 1000)
.assert.title('Django: the Web framework for perfectionists with deadlines.')
},
}
Nightwatch 설정 파일
그리고 Nightwatch의 설정 파일인 nightwatch.json
를 준비합시다.src_folders
에 테스트 코드를 배치한 위치.
대상은 chrome으로 둡시다.
{
"src_folders" : ["tests/e2e"],
"webdriver" : {
"start_process": true,
"server_path": "node_modules/chromedriver/bin/chromedriver",
"port": 9515
},
"test_settings": {
"default": {
"desiredCapabilities": {
"browserName": "chrome",
"javascriptEnabled": true,
"chromeOptions": {
"args": ["--headless"]
}
}
}
}
}
이제 소스를 준비했습니다.
이것을 github에 커밋하십시오.
마지막으로 Github Actions
해당 프로젝트에서 Github Actions 탭을 엽니다.
그리고 장고의 워크플로를 선택합니다.
Django는 테스트 실행을 위한 워크플로우를 만듭니다.
이 녀석을 조금 이지 갑니다.
node를 사용하도록 추기해 갑니다.
branches: [ main ]
## add
env:
NODE_VERSION: '12.x'
## add
jobs:
build:
그리고 설치의 주위에.
nodemodules는 캐시해 둡시다.
pip install -r requirements.txt
## add
- name: Cache node modules
uses: actions/cache@v2
env:
cache-name: cache-node-modules
with:
path: ~/.npm
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v1
with:
node-version: ${{ env.NODE_VERSION }}
- name: npm install, build
run: |
npm install
## add
그리고 runserver와 Nightwatch의 실행입니다!
## add
- name: run server
run: python manage.py runserver >/dev/null 2>&1 &
- uses: nanasess/setup-chromedriver@master
- name: npm test
run: |
npm run e2e
## add
그러면...
바삭바삭~~ 하고 실행되어 갔습니다.
요약
어땠습니까?
쉽게 실행할 수 있는지 확인해 주셨습니까?
e2e 테스트 ... 아무래도 사용하지 않으면 안되는 경우에 참고하실 수 있으면 다행입니다.
오늘의 소스
jrfk/minimum-django-nightwatch
Reference
이 문제에 관하여(Django3×Nightwatch×Github Actions에서 최소 구성의 e2e 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/jrfk/items/c6efbeeae6363070929c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
python -m django startproject mysite
cd mysite
python manage.py runserver
설치
Nightwach를 설치합니다.
npm install nightwatch
package.json 준비
package.json
명령을 추가합니다. "scripts": {
"e2e": "nightwatch"
}
테스트 코드
최소 구성의 테스트 코드를 추가하겠습니다.
tests/e2e/test.js
를 다음과 같이 씁니다.module.exports = {
'@tags': ['sample'],
'最小構成のテストだよ:for github actions': function (client) {
client
.url('http://localhost:8000')
.waitForElementVisible('body', 1000)
.assert.title('Django: the Web framework for perfectionists with deadlines.')
},
}
Nightwatch 설정 파일
그리고 Nightwatch의 설정 파일인
nightwatch.json
를 준비합시다.src_folders
에 테스트 코드를 배치한 위치.대상은 chrome으로 둡시다.
{
"src_folders" : ["tests/e2e"],
"webdriver" : {
"start_process": true,
"server_path": "node_modules/chromedriver/bin/chromedriver",
"port": 9515
},
"test_settings": {
"default": {
"desiredCapabilities": {
"browserName": "chrome",
"javascriptEnabled": true,
"chromeOptions": {
"args": ["--headless"]
}
}
}
}
}
이제 소스를 준비했습니다.
이것을 github에 커밋하십시오.
마지막으로 Github Actions
해당 프로젝트에서 Github Actions 탭을 엽니다.
그리고 장고의 워크플로를 선택합니다.
Django는 테스트 실행을 위한 워크플로우를 만듭니다.
이 녀석을 조금 이지 갑니다.
node를 사용하도록 추기해 갑니다.
branches: [ main ]
## add
env:
NODE_VERSION: '12.x'
## add
jobs:
build:
그리고 설치의 주위에.
nodemodules는 캐시해 둡시다.
pip install -r requirements.txt
## add
- name: Cache node modules
uses: actions/cache@v2
env:
cache-name: cache-node-modules
with:
path: ~/.npm
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v1
with:
node-version: ${{ env.NODE_VERSION }}
- name: npm install, build
run: |
npm install
## add
그리고 runserver와 Nightwatch의 실행입니다!
## add
- name: run server
run: python manage.py runserver >/dev/null 2>&1 &
- uses: nanasess/setup-chromedriver@master
- name: npm test
run: |
npm run e2e
## add
그러면...
바삭바삭~~ 하고 실행되어 갔습니다.
요약
어땠습니까?
쉽게 실행할 수 있는지 확인해 주셨습니까?
e2e 테스트 ... 아무래도 사용하지 않으면 안되는 경우에 참고하실 수 있으면 다행입니다.
오늘의 소스
jrfk/minimum-django-nightwatch
Reference
이 문제에 관하여(Django3×Nightwatch×Github Actions에서 최소 구성의 e2e 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/jrfk/items/c6efbeeae6363070929c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
branches: [ main ]
## add
env:
NODE_VERSION: '12.x'
## add
jobs:
build:
pip install -r requirements.txt
## add
- name: Cache node modules
uses: actions/cache@v2
env:
cache-name: cache-node-modules
with:
path: ~/.npm
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
${{ runner.os }}-build-
${{ runner.os }}-
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v1
with:
node-version: ${{ env.NODE_VERSION }}
- name: npm install, build
run: |
npm install
## add
## add
- name: run server
run: python manage.py runserver >/dev/null 2>&1 &
- uses: nanasess/setup-chromedriver@master
- name: npm test
run: |
npm run e2e
## add
어땠습니까?
쉽게 실행할 수 있는지 확인해 주셨습니까?
e2e 테스트 ... 아무래도 사용하지 않으면 안되는 경우에 참고하실 수 있으면 다행입니다.
오늘의 소스
jrfk/minimum-django-nightwatch
Reference
이 문제에 관하여(Django3×Nightwatch×Github Actions에서 최소 구성의 e2e 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/jrfk/items/c6efbeeae6363070929c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Django3×Nightwatch×Github Actions에서 최소 구성의 e2e 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/jrfk/items/c6efbeeae6363070929c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)