웹 브라우저 테스트하기

Web|2010. 8. 20. 13:08
모든 소프트웨어가 번거로운 테스트 단계를 거치지만, 웹 브라우저를 테스트하는 일은 좀 더 어렵습니다. W3C 표준에 맞게 기능을 구현해야 하며, 표준화가 미흡한 부분은 다른 브라우저와 비교가 필요합니다. 이렇게 표준을 잘 지켜 브라우저를 개발했다고 하더라도 표준을 벗어난 형태로 작성된 웹페이지도 있고, 현실적으로 모든 웹페이지를 다 테스트할 수 없기 때문에 모든 사람을 만족시킬 수 있는 브라우저를 개발하는 것은 불가능한 일입니다. 웹페이지를 작성하고 테스트하는 것도 마찬가지이겠죠. 모든 브라우저가 표준만 잘 지켜면 좋으련만 기기마다, 플랫폼 마다, 브라우저 마다, 버전 마다 다르게 동작하기 때문에 많은 테스트가 필요합니다. 본 글에서는 다양한 각도로 웹 브라우저를 테스트하는 방법을 한 번 정리해보았습니다. 크게 브라우저 기능, 자바스크립트 성능, 그래픽 성능 테스트로 나누어 설명합니다. 

웹 브라우저 기능 테스트

HTML5 테스트


HTML5 관련 API, 마크업이 있는지 확인해 주는 웹페이지입니다. 단지, 확인만 하기 때문에 정상적으로 동작하는지는 알 수 없습니다. 일단, 잘 동작한다는 가정 아래 어느 정도 HTML5 관련 기능을 구현했는지 확인해볼 수 있습니다.

웹사이트 주소: http://www.html5test.com/

W3C CSS 테스트

<표1> CSS Test Suite 개발 현황 (출처: http://www.w3.org/Style/CSS/Test/)

W3C에서 공식적으로 제공하는 CSS 테스트 스위트(Test Suite)입니다. 회원사에서 기여한 테스트 케이스( Test Case)를 정리한 것으로, 웹에서 바로 테스트할 수 있도록 하였습니다. 자동화된 것은 아니고, 일일히 사람이 확인해야 하는 불편함이 있으나 표준화된 내용 하나하나를 직접 확인해 볼 수 있습니다.

웹사이트 주소 http://www.w3.org/Style/CSS/Test/

CSS Acid1 테스트

원래 Box Acid Test라고 불렀으며, 1998년에 개발되었습니다. 브라우저가 CSS1.0 표준을 잘 지원하는 테스트합니다. CSS1.0은 글꼴 속성, 텍스트 색상, 배경 그림, 엘리먼트 Margin, border, padding, 위치 등을 다룹니다. 


CSS Acid2 테스트

Acid2 Test
Acid2 Test는 주로 CSS 2.1 사용하여 HTML 레이아웃 렌더링이 잘 되는지 확인합니다. HTML 마크업, CSS2.1 Styling, PNG 이미지, Data URIs 등을 테스트합니다.

웹사이트 주소 http://acid2.acidtests.org/

CSS Acid3 테스트


Acid3 Test는 웹브라우저가 DOM과 자바스크립트와 관련하여 웹표준은 얼마나 잘 지키고 있는 확인합니다.

웹사이트 주소 http://acid3.acidtests.org/

JavaScript 성능 테스트

애플(Apple)에서 사파리 브라우저에 스쿼럴 피시(SquirrelFish)라는 자바스크립트 엔진을 적용하면서 자바스크립트 성능 논쟁이 뜨겁기 시작했습니다. 구글(Google)도 이에 뒤질세라 V8이라는 자바스크립트 엔진을 크롬 브라우저에 적용하면서 브라우저 성능 경쟁에 뛰어들었습니다. 모질라도 동참했습니다. 이들 회사가 자바스크립트 엔진만 개발한 것이 아니라, 성능까지 측정할 수 있는 최근까지 벤치마크(Benchmark)를 함께 공개했습니다.
 
개발 회사 벤치마크 특징
모질라 Dromaeo SunSpider와 JavaScript Engine Speeds
기반으로 개발
구글 V8 Benchmark 기존에 개발된 벤치마크 코드를 자바스크립트로 구현하여 사용
애플 SunSpider 실제 사용되는 자바스크립트 코드 사용
<표2> 자바스크립트 주요 벤치마크 스위트

드로마에오(Dromaeo)

JQuery를 개발하고 현재 모질라에서 근무하는 John Resig이라는 분이 개발한 자바스크립트 성능 테스트 스위트입니다. SunSpider와 JavaScript Engine Speeds기반으로 개발되었습니다.

웹사이트 주소 http://dromaeo.com/

V8 Benchmark

구글에서 개발한 V8 자바스크립트 엔진의 성능을 평가하기 위해 개발된 벤치마크 스위트입니다. 

웹사이트 주소 http://v8.googlecode.com/svn/data/benchmarks/v5/run.html

SunSpider

애플사에서 만든 자바스크립트 벤치마크로서 JSON 입력으로 부터 태그크라우드(tagcloud)생성, 3D 레이트레이서(raytracer), 암호기법( cryptography) 테스트, 코드 압축해제(code decompression)등과 같은 실제 문제를 포함하고 있습니다. 실제로 많은 웹 브라우저 벤치마크에서 SunSpider를 사용하고 있습니다.



재미있는 것은 각 벤치마크가 자신들의 자바스크립트 엔진에서 좋은 결과를 보여준다는 것입니다. 테스트케이스를 어떻게 선정하느냐에 따라 결과가 다르게 나올 수 있으므로, 여러 벤치마크 스위트를 사용하여 브라우저의 성능을 테스트하는 것이 좀 더 객관적인 판단을 내리는데 도움을 줍니다. 참고로, 2009년 9월에 FavBrowser.com에서 실시한 웹브라우저 벤치마크에서 크롬2가 높은 평가를 받았습니다.

<표2> 웹브라우저 벤치마크 평가(2009.9) (출처: FavBrowser.com)

그래픽 성능 테스트

마이크로소프트에서 지난 3월 IE9 Preview와 함께 "Internet Explorer9 Test Drive"라는 성능 평가 사이트를 공개했습니다. 사실 IE9보다 이 웹사이트가 더욱 흥미로웠는데, 그 동안 다른 브라우저에서는 중요하게 생각하지 않았던 그래픽 성능 데모가 추가되었기 때문입니다.  특히, IE9이 하드웨어 그래픽 가속을 장점으로 내세우면서 앞으로 자바스크립트 성능 못지 않게 2D/3D 그래픽 가속이 브라우저 성능 평가에 중요한 기준으로 자리잡을 전망입니다.


다음에는 "오픈소스 브라우저 엔진은 어떻게 테스트하는가?"라는 제목으로 Mozilla, WebKit의 테스트 방법을  정리하는 기회를 갖도록 하겠습니다. 고맙습니다.

참고




댓글()

Qt의 열린 지배 모델

FOSS|2010. 6. 5. 19:25


Qt의 Git Repository가 공개된지 1주년이 되었습니다. 국내에는 불과 몇 종류의 심비안(Symbian)기반의 스마트폰이 소개되었고, Maemo5를 사용한 N900단말도 출시되지 않았기 때문에, 최근 Nokia 횡보에 관심을 가져주는 매체는 많지 않습니다. 요즘은 연일 iPad, iPhone, Android에 대한 기사를 쏟아내기 바쁘죠.

조용하지만, Nokia Maemo와 Intel Moblin이 합쳐진 MeeGo v1.0이 정식 릴리스 되었고, 조금씩 그 기세를 키워나가고 있습니다.

Android가 비록 Linux Kernel을 사용하고 플랫폼 자체는 오픈소스(Open Source)화되었지만, 사실 기존 오픈소스 커뮤니티에 큰 관심을 주지  못하고 있습니다.

근본적인 이유는 개발 중인  소스코드 저장소(repository)가 공개되어 있지 않은 점, 코드를 기여할 수 있는 프로세스가 없다는 점 복잡한 점 등을 들을 수 있지만,  플랫폼을 구성하는 주요 컴포넌트는 원래  독점 소프트웨어이기 때문에 커뮤니티 자체가 존재하지 않는 부분이 주된 이유인 것 같습니다.

그래서 GNOME, KDE, Linux Kernel 등과 같은 오픈소스 커뮤니티가 Maemo와 Moblin의 통합에 관심을 갖는 것은 자연스러운 일이였습니다.

현재, Nokia는 Qt의 개발용 저장소를 공개하므로서 개발 상황을 공유하고 있고, 외부 개발자의 patch도 받아들이고 있습니다. 앞으로 기술적 논의 뿐만 아니라 로드맵, 일정과 같이 제품에 영향을 주는 의사결정까지도 공개적으로 하겠다고 합니다.
또한, 커뮤니티가 QA 프로세스에 접근할 수 있는 권한을 준다고 합니다. 테스트 결과나 통합 빌드 보고서 등을 공유한다는 것입니다. 이에 더 나아가 의사 결정 과정에 Contributor를 참여시킬 계획을 갖고 있습니다.

이를 통해 Nokia는 더 많은 커뮤니티의 참여를 이끌어 내고, 신뢰성 있는 제품을 개발할 수 있게 됩니다. 커뮤니티의 개발 참여를 통해 다양한 아이디어도 쉽게 받아들일 수 있고, QA에 드는 비용도 절감할 수 있습니다.

이런 시도가 얼마나  큰 성공을 가져다 줄지는 사실 알 수 없으나,  Intel과의 협업을 이끌어내는 등 소기의 성과도 얻었습니다. 물론, Apple, Google에 비해 모바일 플랫폼 경쟁에 뒤떨어져있는 Nokia가 취할 수 밖에 없는 전략일 수도 있지만, Nokia의 이런 행동이 실제로 오픈소스 커뮤니티의 참여를 이끌어 내는 것도 사실입니다.

Nokia는 Post Symbian 시대를 준비하기 위해 Maemo, Qt에 투자하면서 오픈소스를 전략적으로 잘 활용하고 있으며, 이런 움직임이 다른 제조사에게도 영향을 주고 있습니다.

Nokia를 통해 제조사가 더 많은 것을 공개할 수록 더 많은 회사, 개발자를 우리편으로 만들고 그 바탕으로 좀 더 좋은 플랫폼, 제품을 개발하는 성공적인 모델을 기대해봅니다.

댓글()

투표 독려 광고 (모두들 퍼 나르세요)

기타|2010. 6. 1. 22:01

댓글()

Rendering in WebKit

WebKit|2010. 1. 19. 00:04


WebKit의  내부 동작을 설명해주는  video입니다. 구글에서 좋은 정보를 많이 공개하네요..

댓글()

Maemo Summit 2009 정리..

GNOME|2009. 12. 20. 00:06
노키아(Nokia)에서 매년 주최하는 Maemo개발자 행사인, Maemo Summit이 불황임에도 불구하고 작년 보다 더 큰 행사로 성황을 이루었습니다. 비록 직접 참석하지는 못했지만, 사진만 보면 작년 보다는 규모가 훨씬 커 보였습니다.

올해는 10/8~ 11까지 네델란드 암스테르담에서 행사가 개최되었습니다.

Maemo Summit행사가 중요한 이유는 리눅스 기반 모바일 플랫폼의 최신 동향과 발전 방향을 알 수 있기 때문입니다.  그 이유는  Moblin, 리모(LiMo), OpenMoko도 Maemo와 마찬가지로  GNOME Desktop, Freedesktop.org 기술을 많이 사용하고 있고  Maemo와 많은 오픈소스(Open Source) 컴포넌트를 공유하고 있기 때문입니다. 특히, Moblin과 Maemo서로 닮아가면서 오픈소스  데스크탑(Desktop) 기술을 발전시켜나가고 있고 다시 GNOME 데스크탑에까지 영향을 미치고 있습니다.

구글(Google)의 안드로이드(Android)도 리눅스 기반이지만, 커널만 리눅스이고 미들웨어와 개발 방법은 구글이 독자적으로 구축하였기 때문에 오픈소스 데스크탑 기술과는 거리가 멀다고 할 수 있습니다.

Keynote



올해도 변함없이  Nokia의 Maemo Devices부분을 맡고 있고 Vice President Ari Jaaksi가 keynote를 발표했습니다.

N900 발표이후, Maemo Community반응과 외부의 평가를 소개하며, Nokia는 이제 안정된 플랫폼 기반으로 오픈소스 데스크탑의 취약점이기도 한 UX에 집중하겠다는 의지를 보여주었습니다.  이는  Nokia Maemo 플랫폼에 대한 자신감을 나타내는 것으로, Nokia는 이미 오픈소스 데스크탑 기술을 확보했으니, 이제는 UX로 승부수를 걸겠다는 것을 의미합니다.  결론적으로, 오픈소스로도 iPhone과 경쟁이 가능하다는 의미일 수 있습니다.


이번 행사에는 N900에 탑재된 Maemo5보다 Maemo6에 대한 소개가 유난히 눈에 띄었습니다. 내년에 출시될 Maemo6는 N900과 같은 하드웨어 사양에 Multi-touch를 지원한다고 합니다. Nokia Web Runtime과 QT4.6 Developement Framework을 지원하여 개발자가 좀 더 쉽게 애플리케이션을 개발하도록 하고 있습니다.

Maemo는 지금까지 Open Source Debian과  GNOME 개발자를 위한 다소 실험적인 Mobile Device로 인식되어 왔습니다. 노키아에서 오랜 시간동안 Linux 및  Open Source Desktop기술이 얼마나  Mobile Phone에 적합한지 실험을 했다고 볼 수 있습니다. 이제, 그런 실험은 N900에서 끝내고 Maemo6를 통해 좀 더 사용자에게 다가갈 준비를 하고 있습니다. Maemo5와 N900은 그 중간 단계에 와 있다고 볼 수 있습니다. 개발자적인 이미지를 벗고 강력한 PC급 기기로 사용자에게 다가갈 준비를 하고 있습니다.

먼저, UI를 Touch기반 완전히 변경했습니다. Maemo4까지는 Stylus기반의 UI였지만, Maemo5부터 iPhone처럼 UI는 단순해졌고, Touch UI를 지원합니다. 이를 위해 Widget를 새롭게 개발하였고, 처음으로 UI Design관련 문서도 공개했습니다.

미리 보는 Maemo6 기술



Nokia의 숨겨진 무기 QT


Nokia는 QT로 다시 한번 옛 영광을 꿈꾸고 있습니다. QT는  Maemo뿐만 아니라 S60에서도 사용되고 Windows Mobile도 지원합니다. QT Designer라는 개발툴을 제공하며, 이는  Windows, Linux, Mac에서 사용이 가능합니다. 이를 통해 다양한 Desktop개발자를 쉽게 QT로 끌어들일 수 있게 되었습니다.

더 많은 발표 자료는 아래 사이트를 참고하세요.

  • http://wiki.maemo.org/Maemo_Summit_2009



  • http://qt.nokia.com/products-kr/platforms/maemo

'GNOME' 카테고리의 다른 글

WebKitGtk+ Hackfest 2010 후기  (3) 2010.12.16
오픈소스 개발자와 즐거운 만남  (1) 2010.09.16
jhbuild 사용하기  (0) 2010.08.29
Debian Linux가 주는 자유로움  (2) 2009.10.14
여기는 Desktop Summit입니다.  (2) 2009.07.08

댓글()

Windows Mobile폰 iPhone, BlackBerry 부럽지 않게 사용하기

Software|2009. 10. 19. 13:36


여기저기 iPhone 소식에, Android폰도 나올 것  같고, LiMo출시 소식도 들립니다. 이미 BlackBerry를 구입해서 오바마 기분을 만끽하는 분도 계십니다. 하지만, 이 땅의 99.9% 스마트 폰 사용자는 고우나 미우나 Windows Mobile 폰을 사용하고 있습니다.

Windows Mobile이 그동안 혁신에 게을렀던 것은 사실이지만, 이미 수 많은 사용자를 확보했고, 그 동안 수 많은 어플이 개발되어 있어 조금만 관심을 가지면, iPhone 부럽지 않게 활용할 수 있습니다.  물론 이런 노하우를 쌓으려면 약간의 노력이 필요합니다.

저보다 많은 분들이 좋은 노하우를 갖고 계시겠지만, 제 나름대로 삼성 미라지(i780)폰을 1년여동안 사용하면서 경험한 노하우를 공유하도록 하겠습니다. 적절한  인터넷 요금제와 몇가지 유료 어플을 설치하면 iPhone, BlackBerry 부럽지 않게 Windows Mobile를 활용할 수 있습니다.

1. 정액제 데이터 요금제에 가입한다


아직도 잘못 접속된 인터넷에 화들짝 놀라거나, 데이터 접속을 금기시 하나요? 적은 비용은 아니지만, 진정한 모바일 웹을 경험하려면 데이터 요금제는 이젠 선택이 아닌 필수가 되어가는 것 같습니다.

저는 KT사용자로서, 한달 500MB에 12,000윈 짜리 정액 요금제에 가입하였습니다. 이 정도 용량이면 출퇴근길과 화장실에 틈틈히 e-mail도 쓰고 SNS를 이용할 수 있는 충분한 용량을 확보할 수 있습니다. 물론 Full Browsing보다는 서비스 전용 Client를 설치하고, PDA용 사이트를 주로 방문해야 합니다.  하지만 Opera Mobile 설치하여 Turbo모드를 켜시면 Full Browsing도 부담없이 사용할 수 있습니다.

iPhone 출시를 계기로 새로운 통합 데이터 요금제도 나오는등, 데이터 요금에 대한 부담이 줄었다고 하지만, 별로 싸진 느낌은 들지 않습니다.

2. 최신 Opera Mobile 를 설치한다.


Opera Mobile
http://www.opera.com/mobile/
미라지폰에서도 iPhone수준의 Full Browsing을 즐길 수 있습니다. 특히, Turbo모드를 켜두시면, Opera 서버에서 데이터를 80%정도 압축해주므로, 상당히 빠르게 브라우징을 즐길 수 있고, 그 만큼 데이터 전송량도 줄일 수 있습니다.

3. Google Sync로 BlackBerry 흉내내기


Google Sync with Outlook
Google Sync를 사용하면, Google Calendar, Contract, GMail를 동기화할 수 있습니다.
실시간 Sync는 안되지만, Push Mail 흉내는 낼 수 있습니다.

4. Microsoft SMS 설치


SMS
아직도 200개로 제한된 SMS를 쓰십니까? Copy & Paste는 제대로 되나요? 문자 삭제는 참 번거롭지요.
Windows Mobile의 SMS가 원래 이렇게 문제가 많은 것은 아닙니다. MS에서 만든 SMS는 참 가볍고 마치 채팅하듯 사용하기 쉽습니다. MS SMS를 설치한후, 문자를 10배는 많이 보낸 것 같습니다. 덕분에 요금은 좀 더 나왔습니다.

설치방법 소개 (다소 까다롭습니다)

4. Twitter, Facebook는 전용 툴로



Twikini
많은 Twitter Client가 있지만, Twikini가 제일 좋은 것 같습니다. 물론 무료로는 사용기간에 제한이 있어서, 구매를 해야 하나 가격도 비싸지 않으므로 구입해 볼 만합니다. 아직까지 한글 입력을 지원하지 않지만,  Multiple Account를 지원하는 등 보기만하는데도 상당히 유용합니다.

Facebook for Windows Mobile
Microsoft에서 개발한 Facebook전용 Client로 친구들에게 바로 전화거는 기능을 제공합니다.

6. 할 일은 Remember the Milk로 Sync하자



Google Sync로는 Google Calendar에서 제공하는 To Do List를 동기화할 수 없습니다. 비용은 좀 들지만, 대표적인 웹 기반 할일 관리 서비스인 RTM(Remember the milk)Windows Mobile Sync프로그램을 제공합니다. 설치만 하면 Outlook의 To Do List를 RTM과 쉽게 동기화할 수 있습니다.

7. Google Map으로 길도 찾자


Google Maps for Windows Mobile



사용하는 Windows Mobile 폰이 GPS를 지원한다면, Google Maps for Windows Mobile를 설치해보기 바랍니다. 네이게이션 수준은 아니지만, 현재 위치를 지도에 표시해주고, 뚜벅이를 위한 길 안내도 지원합니다.

댓글()

Debian Linux가 주는 자유로움

GNOME|2009. 10. 14. 23:34


2005년 부터 우분투(Ubuntu)를 사용하다가 데비안(Debian)을 설치해보았습니다.
지난 GNOME Conference에서 보니 많은 해커(hacker)들이 데비안을 사용하고 있었습니다.
데비안 심볼에서 웬지 포스도 느껴지고, 그래서 설치해봤습니다.

아직 사용하지 이틀 밖에 안되었지만, 왜 해커들이 Debian을 사용하는지 알것 같습니다.
일단 설치하면, 덜렁 Console모드로 부팅이 됩니다.

여기서 부터 x.org를 설치하고 GNOME Desktop을 사용할지 KDE Desktop을 사용할지를 결정해야 합니다.

> apt-get install xorg
> apt-get install gnome (GNOME Desktop 설치)
> apt-get install gdm (Graphical login화면)

그리고 X윈도우를 시작하려면,

> startx 라고 치면 GNOME Desktop이 실행됩니다.

gnome desktop 설치 전에 startx를 실행하면, 당연히 x-window과 x-window manager만 실행됩니다.
오랜만에 보는 참으로 단순한 데스크탑 모습이였습니다. (화면을 갈무리 못한 것이 아쉽네요)

KDE를 설치하고 싶다면,

> apt-get install kde
> startkde 하면 실행이 됩니다.

GNOME Desktop이 실행된 상태에서도 KDE가 실행되네요.

우분투 사용할 때도 느꼈지만, 데비안에 제공하는 APT Package 시스템을 참 훌륭한 것 같습니다. 인터넷만 연결되면, apt-get명령어로 원하는 모든 것을 설치할 수 있으니까요.

진정한 해커를 꿈꾸신다면 우분투 보다는 데비안을 사용해보세요.
(물론 소스를 다운로드 받아 빌드한 후, 설치하는 젠투(gentoo)에는 비할바는 못하지만)
관심만 가지면 좀 더 많은 자유를 느낄 수 있습니다.

'GNOME' 카테고리의 다른 글

WebKitGtk+ Hackfest 2010 후기  (3) 2010.12.16
오픈소스 개발자와 즐거운 만남  (1) 2010.09.16
jhbuild 사용하기  (0) 2010.08.29
Maemo Summit 2009 정리..  (3) 2009.12.20
여기는 Desktop Summit입니다.  (2) 2009.07.08

댓글()

웹이후의 세계를 읽고...

책읽기|2009. 10. 11. 01:20
웹이후의 세계

웹 자유주의를 위해 다 같이 힘써요~

댓글()