meslab.snu.ac.kr

Download Report

Transcript meslab.snu.ac.kr

Selenium/Appiumを使った、
マルチデバイス対応Webアプリケー
ション向けテスト自動化ツールの開発
~신일철스미킨솔루션즈 서울대학교 프로젝트수업 제안서~
NS Solutions Corporation
Systems Research
& Development Center
2015/03/06
Copyright © 2015 NS Solutions Corporation, All rights reserved.
1
NS Solutions Corporation is The System Integrator
Copyright © 2015 NS Solutions Corporation, All rights reserved.
2
What is System Integrator(SIer)?
고객의 경영과제를 IT의 힘으로해결하는 사업
컨설팅
System Integrator
중심비지니스영역
아웃소싱
요구분석
설계
실장
테스트
일반업무
도입
투자효과의
죄대화
리스크,
코스트의
최소화
운영/보수
• 유저기업에서 자사개발
– POS…자사의 비지니스에 정통하고 있다
– NEG…IT스킬, 경험이 제한된다
• SI기업에 의한 위탁개발
– POS…풍부한 IT경험
NSSOL의 접근법
SI기업이면서 유저기업출신인 경험을
살려 유저의 시점에서 시스템을
기획하고 개발 및 운영한다.
– NEG…현장업무의 상세한 해설이 필요
Copyright © 2015 NS Solutions Corporation, All rights reserved.
3
Our Strength:Technology –R&D Center
13F~15F of
Minatomirai, Yokohama
Researcher: 200+
NovaAP
Datatech
Systech
三菱重工横浜ビルホームページより
Satoshi Kitazawa
Director of Sys-RDC
Research and development
Research and development for solution deployment in the next three years
Creating products independently
Evaluate/introduce external products
Business support
Participating in (leading-edge) projects
Practical experiences of researchers
Trouble shoot
Human resource development
Implement specialized education to maintain and improve the level of employees
Implement education and training of external personnel
GOAL:Supply Leaders in IT Technology for the Whole Company
Research and Development : Business Support = 50 : 50
Copyright © 2015 NS Solutions Corporation, All rights reserved.
4
Selenium/Appium을 이용한 멀티 디바
이스 대응 WEB 어플리케이션을 위한
테스트 자동화 툴의 개발
1st 툴의 개발: 정답으로 정의한 화면 캡쳐와의 차이점을 특정하여, 차이에
대하여 보기 쉽게 표시하는 툴을 개발한다.
2nd 툴의 테스트 및 개선: 상기에서 개발한 툴을, 실제 이용을 상정한 시나
리오에서 이용하여, 기능 및 사용감 향상을 위해 개선.
3 rd 툴의 공개: hifive개발자사이트(http://www.htmlhifive.com),
Github에 오픈소스로서 공개
Copyright © 2015 NS Solutions Corporation, All rights reserved.
5
This program aim at
Check!
Check!
시스템개발의 재미를 느낀다
“사용자의 시각”에서
개발하는 중요성을 실감한다
Copyright © 2015 NS Solutions Corporation, All rights reserved.
6
자동테스트 실행환경과 연동된
합불합판정 툴 화상비교툴의 작성
Path Base、Selector Base의 정답정의는 화면정의 변경에
따른 비용이 수반되기때문에, 본시스템에서는 미리 캡쳐해놓은
이미지로 정오판정을 하겠습니다.
정답화상폴더
REST/JSON
Client
・hifive(MVC Framework)
・HTML5(JavaScript+CSS+HTML)
Server
・Spring MVC
・Java, J2EE
결과화상폴더
• minimal set의 기능을 실현한 프로젝트의 양식을 드리도록 하겠습니다.
• 3가지 시점에서 확장을 검토해주세요.(전부를 망라할 필요는 없습니다)
①.viewer의 조작성의 향상…여러가지 방법으로 화상비교, 비교결과의 알기쉬운 표시
②.diff화상의 취득방법…효율적인 화상비교 알고리즘의 실장
③.외부와의 연계…CI툴과의 연계, 수정담당자에게 알림
Copyright © 2015 NS Solutions Corporation, All rights reserved.
7
Background:We need
automated regression testing environment
against multi devices
DevOps
Q
Lean Startup
ualityCostDelivery
Continuous Delibery
Many devices
We must
speed up
Development
Cycle
Copyright © 2015 NS Solutions Corporation, All rights reserved.
8
テスト定義書
High level structure of
automated regression testing environment
against multi devices
Remote
WD
Server
①테스트 스크립트의 생성
Selenium WD의 API를
이용한 브라우저의
조작코드
+
Junit의 assertion
JUnit
テスト
노드 서-버-
②테스트 클라스의③분기노드 결정
실행
브라우저조작요구
Firefox
Driver
Remote
WD
Server
Chrome
Driver
테스트대상
웹페이지
노드서-버Grid
Server
④브라우저 조작실행 ・화면 캡쳐
브라우저조작결과
⑤테스트의 판정,
캡쳐화면보존
테스트 스크립트의
호스트 서-버-
Selenium Grid
Hub서-버미리미리
테스트를
실행하여
보존해둔다
결꽈화상 폴더
노드서-버-
Android기기
Appium
정해 화상 폴더
노-드서-버-
⑥정답화면과 테스트 결과 화면
을 비교해서 변경부분(diff
화면)을 저장
화상비교 툴
Appium
Diff 폴더
Copyright © 2015 NS Solutions Corporation, All rights reserved.
iOS기기
Your Target
9
전제스킬~교육효과
• 6. 필요스킬 밑 지식
– Web어플리케이션의 개발
・널리 사용되어있는
툴(Selenium/Appium)를
습득할수 있는 좋은 기회!
・여러분의 결과는 오픈 소스가
되어서 사회에 공헌!
– Java,JavaScript 프로그래밍 경험
• 7. 교육/훈련효과:
– 소프트웨어 제품의 기획, 개발스킬의 향상
– Java, JavaScript 프로그래밍 스킬의 향상
• 8. 개발기간: 3개월
• 9. 개발인원: 2~3명
You can learn about hifive at :
http://www.htmlhifive.com/conts/web/view/tutorial/Web
Home?language=en
• 10. 기업측 담당자 :
– 요코야마 마사루
[email protected]
– 가시무라 다쿠야
[email protected]
Copyright © 2015 NS Solutions Corporation, All rights reserved.
10
Communication plan
video
http://www.google.com/+/learnmore/hangouts/
https://slack.com/
(just example: detail will fix 2nd
time of lecture)
• Main communication
language is English.
○ Meeting
• (Sometimes Korean
employees of nssol
will be help us.)
Every Friday
• 14:00-15:00:video meeting on
Google hangouts
src
https://github.com/hifive
chat
• 15:00-18:00:chat on slack(if
needed)
• Sorry 5/1 is national
holiday in Japan so
meeting will skip at
this week.
○ Code Share
・ Github hifive Repository
Copyright © 2015 NS Solutions Corporation, All rights reserved.
11
Topics:If you would like to…
• 본 과제에 지원해주신 팀을
NSSOL시스템연구소로 초청하여
- 과제의 발표
- 연구소의 소개
의 장을 마련하고자 합니다.
• (세계에서 유례가 없는)일본의 Integrator기업에서 밖에 경험하지
못하는 유저기업과의 관계성의 현지에서 체험하는 것, 그리고 그
역할을 실지 실무에서 실천하고 있는 한국선배사원과의 대화를
통해서 실감하는것이 목적
• 상세내용은 서울대 컴공학과의협의후 결정합니다
• 5월중순 예정
검토중기획
Copyright © 2015 NS Solutions Corporation, All rights reserved.
12
소개:HTML5기업Web시스템을 위한
플랫폼~hifive
○Open Source
 차세대 Web표준(HTML5/JavaScript/CSS)을 활용한
기업Web시스템개발을 위한 Plat Form입니다.
 NSSOL의 Open Source 로서 공개하고 있습니다
 Apache License, Version 2.0 라이센스를 취득하고
있어 상용 시스템으로의 적용이
용이합니다.(고객단독으로의 이용도 가능)
○이점
開発コミュニティ
開発支援ツール
サンプル・
チュートリアル
ランタイム
言語仕様
実行環境
 쉽게 이용할수 있고 고품질이면서 대규모
JavaScript개발을 가능하게 하는 틀을
제공합니다
– 업무 로직층에서 써야 될 내용과 View층에서 써야 될
내용을 분리하기 위하여 계층적인 MVC구조를
규정합니다.
– 담당화면 특유의 처리와 공통처리의 분리를 명확화
하기 위한 이름공간정의나、Component화의 촉진이
가능
Copyright © 2015 NS Solutions Corporation, All rights reserved.
13
잘 부탁하겠습니다 !
www.facebook.com/htmlhifive
@htmlhifive #htmlhifive
www.htmlhifive.com
Copyright © 2015 NS Solutions Corporation, All rights reserved.
14
상표에 대하여
• NS Solutions、NS(로고)、NSSOL은 신일철스미킨솔루션즈주식회사의
상표등록입니다.
• hifive、hifive(로고)는 신일철스미킨솔루션즈주식회사의 등록상표입니다.
• 기타 본문에 기재한 회사명, 제품명, 로고는 각사의 상표 및 등록상표입니다.
• HTML5 Logo by W3C.
Copyright © 2015 NS Solutions Corporation, All rights reserved.
15