저는 핀테크 서비스 개발 프로젝트에 참여하여 CI 구축과 QA 자동화 부분 개발을 담당하였습니다.
프로젝트가 시작하면 수 많은 개발자들과 기획자 그리고 QA 들이 다투는 것은 빈번한 일상입니다..
바쁜 개발 과정에서 기본적인 로그인 함수의 구현을 계속해서 체크해야 하는 것은 매우 불편하고 번거롭죠.
Selenium과 Jenkins를 통해 다음과 같은 상황을 자동화하여 개발자들과 QA/기획자들간의 갈등을 줄이고자 합니다.
스크린샷 중 가린부분들은 현재 회사 프로젝트 유출 방지를 위한 것이니 너그러이 용서해주시길..
저는 핀테크 서비스 개발 프로젝트에 참여하여 CI 구축과 QA 자동화 부분 개발을 담당하였습니다.
프로젝트가 시작하면 수 많은 개발자들과 기획자 그리고 QA 들이 다투는 것은 빈번한 일상입니다..
바쁜 개발 과정에서 기본적인 로그인 함수의 구현을 계속해서 체크해야 하는 것은 매우 불편하고 번거롭죠.
Selenium과 Jenkins를 통해 다음과 같은 상황을 자동화하여 개발자들과 QA/기획자들간의 갈등을 줄이고자 합니다.
스크린샷 중 가린부분들은 현재 회사 프로젝트 유출 방지를 위한 것이니 너그러이 용서해주시길..
Hi I’m Cris, iOS Developer in KLabCyscorpions. In this post, I want to share with you my presentation on Code Review guidelines for iOS.
But, what is Code Review?
According to Wikipedia:
“Code Review is systematic examination (often known as peer review) of computer source code. It is intended to find and fix mistakes overlooked in the initial development phase, improving both the overall quality of software and the developers’ skills. Reviews are done in various forms such as pair programming, informal walkthroughs, and formal inspections.”
Want to review code? Then First things first! For you to review code effectively, you need the basic know-how of reviewing code as both the developer and the reviewer. These slides will give some guidelines on how to think in both these roles when reviewing code.
Designing a pragmatic back-end service for mobile gamesiFunFactory Inc.
For competition in the mobile gaming industry getting fierce, mobile game developers now face tough challenges including handling a different service landscape and working on a tight time budget. These obstacles lead the developers to seek handy solutions to abstract away development complexity and to reduce overall development cycle. This talk will focus especially on the back-end side of mobile game services. It will first review issues in mobile game services, then highlight the requirements of back-end services for the services. Finally, the talk will propose a vertically-integrated back-end platform.
Origin Link : http://www.oss.kr/oss_information6/1435
세션2 : 공개SW개발과 우분투 환경의 개발툴
우분투 이야기
- 우분투 한국 이야기
- 우분투 장점
- 우분투 개발 환경
- 우분투에서의 협업 툴 활용
(강사) 강분도 (우분투한국사용자모임 대표)
15. 코드를 작성하고 저장소에 넣을 때 까지
45f1cf55
a8d8323
6162b7e
Bug #31 Topic #1
Topic
#1-1
Review
Server
Build
Server
1. push
2. build
& test
3. verify
Repository
peer devs
4. review 5. commit
dev
16. 저장소에 있는 코드를 개발 환경으로
Repository
Review
Server
5. commit
Development
Servers
Build
Server
6. merge
build
Package
Server
7. upload
packages8-a. deploy
8-b. deploy (devs. per se)
9. test
7. upload
packages
7. upload
packages
27. Build, Test and Verify
Modified
Source
Code
Review
Server
Build
Server
2. build
& test
3. verify
push
Builder
VM
Tester
VM
2a. Build 2b. Run tests
커밋마다 VM에서 빌드/테스트해서 확인한다
77. Jenkins를 이용해서
확장하기 쉬운 웹 프런트엔드처럼 쓰며,
VM 들을 slave node 삼아 다른 빌드 작업을 한다
여러 slave node가 있으면 동시에 여러 커밋을 처리할
수 있다
빌드/테스트/확인 용도로도 쓰고,
리뷰가 끝난 코드를 패키징 하는 용도로도 쓴다
78. XenServer: 빌드 환경
Hypervisor를 스크립트로 제
어하기 쉽다
VM 생성/삭제/사용 자동화
OS / 용도별 VM 템플릿을 준
비하고 사용하기 간편
성능
Xen Project http://xen.org
189. git + gerrit: linear history
svn / perforce에서 볼 수 있는 일직선의 이력을 강제할 수 있다
190. 관리 / 자동화 편의
gerrit 하나가 git + ssh + review 페이지를 구동
프로젝트 / 브랜치 별 권한 관리
성능: 대형 사이트에 설치되어 테스트 (android,
eclipse,libre office, ...)
외부 도구를 만들기위한 RESTful API 제공
191. APT: 패키지 관리 시스템
Debian Linux / Ubuntu 기
본 패키지 관리자
범용성 / 많은 문서
사설 서버
암호학적 해시를 이용한 무결
성 검증
배포 서버는 단순 웹 서버Debian Project http://debian.org
192. 의존성 + 버전 관리
패키지 매니저의 주 역할
소스 관리 도구의 리비전 정보를 이용할 수도 있다
특정 버전의 라이브러리를 쓰면 해당 버전을 이용하도
록 강제
libfoo=2.0, libbar==1.1, libbaz4.0
테스트 / 서비스할 때 이런 제한을 이용해서 자동화
193. 패키지 저장소 서버
외부 저장소가 느리면 내부 저장소에 미러
외부에 공개하지 않을 패키지는 따로 (내부) 서비스
개발 / 테스트 / 프로덕션 환경을 저장소로 구분
필요에 따라 인증 기능을 넣기도
(http(s) auth, ftp(s) auth, ssh, ...)