Mozilla: Mozmill meets L10n

19
Mozmill meets L10n Henrik Skupin

description

Basics of Mozmill and how this functional testing tool can help us to improve the quality of localized Firefox builds.

Transcript of Mozilla: Mozmill meets L10n

Page 1: Mozilla: Mozmill meets L10n

Mozmill meets L10n

Henrik Skupin

Page 2: Mozilla: Mozmill meets L10n

2 2

Agenda

I.  Why another testing framework?

II.  Basics of Mozmill

III.  Mozmill for l10n testing

IV.  Information

V.  Q&A

Page 3: Mozilla: Mozmill meets L10n

3 3

Agenda

I.  Why another testing framework?

II.  Basics of Mozmill

III.  Mozmill for l10n testing

IV.  Information

V.  Q&A

Page 4: Mozilla: Mozmill meets L10n

4 4

Missing Pieces

•  Several testing frameworks available:"Mochitests, Reftests, Unit tests, …

BUT

•  Complex user-centric functional testing too difficult

•  Restart tests not possible (e.g. software update)

•  Not easily usable by contributors to test "their applications

Page 5: Mozilla: Mozmill meets L10n

5 5

What we focus on…

•  Automation of manual Litmus tests

•  Continuous test execution (buildbot)

•  Optimizing the release and feature testing process

•  Easy usable environment to get more daily testers

Increasing the Quality of the Application

Page 6: Mozilla: Mozmill meets L10n

6 6

Agenda

I.  Why another testing framework?

II.  Basics of Mozmill

III.  Mozmill for l10n testing

IV.  Information

V.  Q&A

Page 7: Mozilla: Mozmill meets L10n

7 7

What is Mozmill

•  Framework for automated UI testing

•  Available for applications built on the Mozilla Platform

•  Runnable as both an extension and from command line

•  Integrated Development Environment

•  Extendable by Python scripts

•  Full unit test API (JavaScript Unit test module)

Page 8: Mozilla: Mozmill meets L10n

8 8

Architecture

Python (Mozmill)

JsBridge

Application Process (Firefox, Thunderbird, ...) E

xten

sion

s

JsBridge Mozmill

Mozmill

IDE

Frame

Page 9: Mozilla: Mozmill meets L10n

9 9

Demo

•  Mozmill IDE (Inspector / Recorder)

•  Running a simple test

•  Display of the test results

•  Running existing tests via command line in a localized build

Page 10: Mozilla: Mozmill meets L10n

10 10

Agenda

I.  Why another testing framework?

II.  Basics of Mozmill

III.  Mozmill for l10n testing

IV.  Information

V.  Q&A

Page 11: Mozilla: Mozmill meets L10n

11 11

Current l10n testing status

•  Compare-locales script to check current status"(http://l10n.mozilla.org/dashboard/)

•  No checks for undefined entities (XML parsing error) which can result in a broken application

•  Localizer test-run on Litmus most commonly used for upcoming major releases

•  No automated functional testing for localized"Firefox builds on a regular basis

Page 12: Mozilla: Mozmill meets L10n

12 12

Goals / Ideas for l10n Mozmill Tests

Page 13: Mozilla: Mozmill meets L10n

13 13

Demo

•  Software Update test for a localized build

Page 14: Mozilla: Mozmill meets L10n

14 14

Agenda

I.  Why another testing framework?

II.  Basics of Mozmill

III.  Mozmill for l10n testing

IV.  Information

V.  Q&A

Page 15: Mozilla: Mozmill meets L10n

15 15

Downloads & Code

•  Mozmill Extension on AMO:"https://addons.mozilla.org/en-US/firefox/addon/9018

•  PyPI packages for Mozmill:"http://pypi.python.org/pypi/mozmill "http://pypi.python.org/pypi/jsbridge"http://pypi.python.org/pypi/mozrunner

•  Code repositories:"http://github.com/mikeal/mozmill "http://github.com/mikeal/jsbridge "http://github.com/mikeal/mozrunner

Page 16: Mozilla: Mozmill meets L10n

16 16

Documentation

•  Main documentation on MDC:"https://developer.mozilla.org/en/Mozmill

•  Mozmill test writing tutorial on QMO:"http://quality.mozilla.org/documents-home/code-docs/mozmill-test-creation/

•  Mozmill-Dev Google Group:"http://groups.google.com/group/mozmill-dev

Page 17: Mozilla: Mozmill meets L10n

17 17

Questions

Developers

Mikeal Rogers (mikeal): [email protected]

Clint Talbert (ctalbert): [email protected]

Adam Christian (admc): [email protected]

Test creation

Henrik Skupin (whimboo): [email protected]

Page 18: Mozilla: Mozmill meets L10n

18 18

Agenda

I.  Why another testing framework?

II.  Basics of Mozmill

III.  Mozmill for l10n testing

IV.  Information

V.  Q&A

Page 19: Mozilla: Mozmill meets L10n

19 19

[email protected]

Thank You