Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

US9015678

Download as pdf or txt
Download as pdf or txt
You are on page 1of 28

US009015678B2

(12) United States Patent (10) Patent No.: US 9,015,678 B2


Aoyama et al. (45) Date of Patent: Apr. 21, 2015
(54) TESTING INTERNATIONALIZED (58) Field of Classification Search
SOFTWARE USING TEST RESOURCE FILE CPC ........... G06F 8/40: G06F 8/51; G06F 9/4448;
AND TEST FONT G06F 11/3672; G06F 11/3684; G06F 11/3692;
G06F 17/214; G06F 17/289
(71) Applicant: International Business Machines USPC ................ 717/124-137; 704/2; 714/37, 38.1;
Corporation, Armonk, NY (US) 71.5/269
See application file for complete search history.
(72) Inventors: Nozomu Aoyama, Kanagawa-ken (JP);
Toshimichi Arima, Kanagawa-ken (JP); (56) References Cited
Takaharu Itoh, Kanagawa-ken (JP); to
Yuko, Kanagawa-ken (JP) U.S. PATENT DOCUMENTS

(73) Assignee: International Business Machines 6,275,790 8, 2001 Yamamoto et al. ............... TO4/8
Corporation, Armonk, NY (US) 6.425,123 T/2002 Rojas et al.
6,453,462 9, 2002 Meade et al.
6,507,812 1, 2003 Meade et al.
(*) Notice: Subject to any disclaimer, the term of this 6,735,759 5, 2004 Yamamoto et al. ........... 717/136
patent is extended or adjusted under 35 6,760,695 T/2004 Kuno et al.
U.S.C. 154(b) by 0 days. 7,389,223 6/2008 Atkin et al. ....
7,509,251 3/2009 Andrews et al. .................. TO4/8
(21) Appl. No.: 14/145,587 (Continued)
(22) Filed: Dec. 31, 2013 Primary Examiner — Qing Chen
(74) Attorney, Agent, or Firm — Jeffrey T. Holman
(65) Prior Publication Data
US 2014/O2O1715A1 Jul. 17, 2014 (57) ABSTRACT
Related U.S. Application Data A storage medium containing computer code, which when
executed by a computer causes the computer to perform the
(62) Division of application No. 1 1/853,412, filed on Sep. steps of creating a second file of messages to be outputted by
11, 2007, now Pat. No. 8,656,357. the software from a first file of messages, the messages in the
(30) Foreign Application Priority Data first file being written in a first language and executing the
software using the second file. The creating of the second file
Sep. 11, 2006 (JP) ................................. 2006-246.177 includes for each message in the first file, applying specified
rules to form a second message by changing the character
(51) Int. C. length of the second message, filling in any blank characters
G06F 9/45 (2006.01) in the second message with a dummy character, inserting
G06F 9/44 (2006.01) characters from the target language into prescribed places in
G06F 7/28 (2006.01) the second message to form a second message having both
G06F II/36 (2006.01) characters of the first language and characters of the target
(52) U.S. C. language, and copying the second message into the second
file.
CPC .......... G06F 1 1/3672 (2013.01); G06F 17/289
(2013.01); G06F 9/4448 (2013.01); G06F
II/3684 (2013.01); G06F II/3692 (2013.01) 4 Claims, 13 Drawing Sheets

FIRST
UNIT
STORAGE
ORIGINAL
310
secondsorace
RESOURCE 330
FILE
TESTRESOURCE
320 FILE GENERATING RESOURCE
UNIT FILE
CONVERSION
TABLE

370
DEFAULTFONT 355
375 TESTOBJECT
--PROGRAM
HARD-CODED EXECUTICNUMIT
CHARACTER
DETECTIONFONT
380 y
360 TDISPLAY
GARBLED DISPLAYSCREEN DEVICE
CHARACTER CREATION UNIT
DETECTIONFONT
385
365
REVERSE FONT TDISPLAY
390 FONT
UNIT SELECTIONDEVICE
SORTFCNT
FROMINPUT
395 DEWIGE
OTHERFONT
US 9,015,678 B2
Page 2

(56) References Cited 2004/O122652 A1* 6/2004 Andrews et al. .................. TO4/2
2005/0065772 A1 3/2005 Atkin et al. ....................... TO4/2
U.S. PATENT DOCUMENTS 2006/0217954 A1* 9/2006 Koyama et al. ................... TO4/2
7,865,353 B2 * 1/2011 Koyama et al. ................... TO4/3
2003/0236658 A1* 12/2003 Yam .................................. TO4/2 * cited by examiner
U.S. Patent Apr. 21, 2015 Sheet 1 of 13 US 9,015,678 B2

FIG. 1A FIG. 1C
1OO 110

ORIGINAL RESOURCE FILE


MSG0 =TF slaus is 0. 115
Color(1=Grgan
Cr=R
Color-Yellow The status s Greer,
MSGO2- Rifrosh the Status,
MSGO3=SOt
120
Green
Rec
Ygow
al
130
Refes the Status

SOURCE CODE

shiow?wessage (MSG01 w Objecl("Grer"))

MOCK-TRANSLATED RESOURCE FILE


MSGC1-LP (T)s. he status it is O-38 r.--
Color.01 =EG3rcorn----
Color)2= (R)-ed-l
ColorO3=(i)(Yiellow---- the status E. Greens.----
MSGO2=If (R)--efresh the Status.----
MSGO3=33 (SEEart. --—
A (R - a--- &SigErt.---
Ei(G)
(k)(Y)green---
fiellow--- treet,
22O
215 225
-1
(R) - efresh the Status.--
U.S. Patent Apr. 21, 2015 Sheet 2 of 13 US 9,015,678 B2

FIRST STORAGE
UNIT
310
ORIGINAL
RESOURCE
FILE
TEST RESOURCE ||
FILE GENERATING RESOURCE
UNIT

THIRD STORAGE UNIT

370
DEFAULT FONT
375 TEST OBJECT
PROGRAM
HARD-CODED EXECUTION UNIT
CHARACTER
DETECTION FONT

TO DISPLAY
GARBLED DEVICE
CHARACTER
DETECTION FONT
385
REVERSE FONT TO DISPLAY
DEVICE
390
SORT FONT
iFROMINPUT
| DEVICE
U.S. Patent Apr. 21, 2015 Sheet 3 of 13 US 9,015,678 B2

FIG 4A
400
ORIGINAL RESOURCE FILE
MSG01=The status is {0}.
ColorO1=Green
ColorO2=Red
ColorO3=Yellow
MSG02=Refresh the StatuS
MSGO3=SOrt

FIG. 4B
405

CHARACTER CHARACTER CHARACTER CHARACTER


CODE CODE
U+0020 BLANK U+3000 DOUBLE-WIDTH
CHARACTER BLANK

U+007E U+FFEA

FIG. 4C
410
TEST RESOURCE FILE
MSG 01 - Aggift it it gig fief O.
Color(1 - Kii Y
Color.02 = x .
ColorC3 = a iii. No.:
MSGC2= trifidi d'Ét tda, d.
MSGC3=3No.
U.S. Patent Apr. 21, 2015 Sheet 4 of 13 US 9,015,678 B2

FIG 5A FIG. 5B
S500
READ ORIGINAL NEXT
RESOURCE FILE ITEM(S
NORIGINAL
S505 RESOURCE
FILE2
GENERATE TEST RESOURCE YES
FILE FROM THE ORIGINAL
RESOURCE FILE READ NEXT ITEM FROM THE
ORIGINAL RESOURCE FILE
S510
STORE THE TEST ASSIGN KEY FROM THE TEM
RESOURCE FILE TO "VARIABLE KEY"

WRITE THE "VARIABLE KEY"


INTO TEST RESOURCE FILE

ASSIGN CHARACTER STRING


VALUE FROM THE ITEM TO
"VARIABLE TEXT"

READ AND ASSIGNONE


CHARACTER FROM THE
"VARIABLETEXT" TO
"VARIABLE X"

THE
"VARIABLEX"S
NUMERICAL CHARACTER, AND
"{"AND""ARE BEFORE
AND AFTER THE
CONVERT THE "VARIABLE X" "VARIABLE X"T ASSIGN THE
BASED ON CONVERSION "VARIABLE X"
IABLE ANDASSIGNIT TO
VARABLE Y
AS IT IS TO
VARIABLEY"

WRITE THE "VARIABLEY"


INTO THE TEST RESOURCE
FILE

LAST CHARACTER IN THE


"VARIABLE TEXT"?
U.S. Patent Apr. 21, 2015 Sheet 5 of 13 US 9,015,678 B2

F.G. 6

660
DISPLAY SCREEN USING REGULAR FONT

;3ft ESSF EEASE


U.S. Patent Apr. 21, 2015 Sheet 6 of 13 US 9,015,678 B2

FIG. 7A
HARD-CODED CHARACTER DETECTION FONT
CHARACTER GLYPHIN GLYPHINHARD- 700
CODE REGULAR CODED CHARACTER
FONT DETECTION FONT
U+3000 BLANK CHARACTER CODES THAT ARE NOT
THE TEST OBJECTS
(CHARACTER CODES
CORRESPONDING TO THE
CHARACTERS OF THE TRANSLATION
U+FFEA TARGET LANGUAGE INCLUDED IN
BLANK BLANK THE CONVERSIONTABLE)
U+0020 CHARACTER CHARACTER
CHARACTER CODESAS THE TEST
OBJECTS
(CHARACTER CODES
CORRESPONDING TO THE
CHARACTERS OF THE ORIGINAL
LANGUAGE)
U+007E
CHARACTER CODES THAT
OTHER ARE NOT THE TEST OBJECTS
CHARACTER (CHARACTER CODES NOT
CODES CORRESPONDING TO EITHER
THE CHARACTERS OF THE
ORIGINAL LANGUAGE OR THE
CHARACTERS OF THE TRANSLATION
TARGET LANGUAGE INCLUDED
INTHE CONVERSIONTABLE)

FIG. 7B SCREEN DISPLAYUSINGHARD-CODED


CHARACTER DETECTION FONT
705

710

Green

715 720
DDDDD
DOD
OOOOOO
725
OOOOOOOOOOOOOOOO
U.S. Patent Apr. 21, 2015 Sheet 7 of 13 US 9,015,678 B2

FIG. 8A
8OO
GARBLED CHARACTER DETECTION FONT
CHARACTER GLYPHIN GLYPHN GARBLED
CODE REGULAR CHARACTER
(JAPANESE) FONT DETECTION FONT
U+3000 DOUBLE-WIDTH
BLANK
CHARACTER CODES
ORRESPONDING TO
THE CHARACTERS
OF THE TRANSLATION CHARACTER
U+FFEA A O TARGET LANGUAGE
INCLUDED IN THE
CODES THAT
ARE NOT THE
U+0020 | CHARACTER
BANK O CONVERSIONTABLE) TEST
OBJECTS
CHARACTER CODES
ORRESPONDING TO
THE CHARACTERS OF
LANGUAGE)
8EcTER T CHARACTER CODESAS THE TEST
CODES OBJECTS
CHARACTER CODES NOT
ORRESPONDING TO EITHER
THE CHARACTERS OF THE ORIGINAL
LANGUAGE OR THE CHARACTERS OF
THE TRANSLATION TARGET LANGUAGE
INCLUDED IN THE CONVERSIONTABLE)

FIG. 8B
SCREEN DISPLAYUSING GARBLED 810
CHARACTER DETECTION FONT

815

82O 825
DDD
DDDDDD
830
TTTTTTT TTTTTTTTT
U.S. Patent Apr. 21, 2015 Sheet 8 of 13 US 9,015,678 B2

FIG. 9A
REVERSE FONT
CHARACTER CORRES- CHARACTER GLYPH GLYPHIN 850
CODE PONDING CODE INREGULAR REVERSE FONT
(ENGLISH) CHARACTER (JAPANESE)|FONT
U+002O BLANK DOUBLE- BLANK
CHARACTER U+3000 WIDTH CHARACTER
BLANK

(CHARACTER CODES
CORRESPONDING CHARAC
SHESS ?cies
TARGETLANGUAGE
as
THE TEST
INCLUDED IN THE OBJECTS
CONVERSIONTABLE)

U007E UFFEA BLANK BLANK


"EARACTER HARACTER (CHARACTERCODES
NA NA . . . . . . . . . . . ESTO
THE CHARACTERS
of I - I Wraw
- - i.
WAY OF THE ORIGINAL

EE D O/T CHARACTERCODESTHAIARENOT
THE TESTOBJECTS (CHARACTER
CODES NOT CORRESPONDING TO
EITHER THE CHARACTERS OF THE
ORIGINAL LANGUAGE OR THE
CHARACTERS OF THE TRANSLATION
TARGET LANGUAGE INCLUDED
INTHE CONVERSIONTABLE)

FIG. 9B SEBEENPSFAYUSING 850


865
The status is Green.
870 875

:TTTTTTTTTTTTTTTT:
U.S. Patent Apr. 21, 2015 Sheet 9 of 13 US 9,015,678 B2

SORT FONT
CHARACTER GLYPHIN GLYPHINHARD- 900
CODE REGULAR CODED CHARACTER
FONT DETECTION FONT
U+3000 EEE-WIDTH (15) ID
CHARACTER CODES
AS THE TEST OBJECTS
(CHARACTERCODES
CORRESPONDING TO THE
CHARACTERS OF THE TRANSLATION
TARGET LANGUAGE INCLUDED IN
THE CONVERSIONTABLE)

U+FFEA
(CHARACTERCODES
CORRESPONDING TO THE CHARACTER
CHARACTERS OF THE CODES THAT
ORIGINALLANGUAGE) ARE NOT THE
TEST OBJECTS
(CHARACTER CODES NOT
CORRESPONDING TO
EITHER THE CHARACTERS OF
THE ORIGINAL LANGUAGE
OR THE CHARACTERS OF
THE TRANSLATION TARGET
LANGUAGE INCLUDED IN
F G 1 OB THE CONVERSIONTABLE)
SCREEN DISPLAY USING 905
SORT FONT

910
(28)(31)(44)(21)(14)(10)(14)(29)(21)(41)(21)
OOOOO
915
(16)(15)(44)(1) (38)(5)(15)(14):
(7)(44)(62)
(58)(44)(35)(35)(5)(36)

E3:33:33:39:
U.S. Patent Apr. 21, 2015 Sheet 10 of 13 US 9,015,678 B2

S600 S660
RESULTS FROM BUFFER
S605
S665
S610 DATA TO
BE PROCESSED
OUTPUT PROCESSED RESULTS INCLUDED IN THE
PROCESSED
S615 RESULTS?
CREATE DISPLAY SCREEN
USING DEFAULT FONT
READ THE DATA TO BE
TRANSMIT THE DISPLAY PROCESSED FROM THE
SCREENTO DISPLAY DEVICE PROCESSED RESULTS S680
S625 CREATE PART
WAIT FOR INPUT NO OF DISPLAY
CHARACTER SCREEN
S630 CODE DETECTED? BASED ON
THE READ
FONT NO DATA
SELECTION
REQUEST? RETRIEVE CORRESPONDING
CHARACTER SHAPE FROM
END THE DESIGNATED FONT
S635
CREATE SCREEN FOR CREATE PART OF DISPLAY
FONT SELECTION
S640
SERENESSEATER
SHAPE
TRANSMIT THE SELECTION
SCREEN TO THE DISPLAY
DEVICE
S645
RECEIVE DESIGNATION
OF FONT
S650
CREATE DISPLAY SCREEN
USING THE DESIGNATED
FONT
S655
TRANSMIT THE DISPLAY
SCREEN TO THE DISPLAY
DEVICE
U.S. Patent Apr. 21, 2015 Sheet 11 of 13 US 9,015,678 B2

955 98O

. . WEBAPPLICATION . . WEB BROWSER


985
960
. SPECIAL FONTS AND
. TEST RESOURCE FILE OTHER FONTS
965 990

HTTP
a. < D.

970

WEBSERVER CLIENT
U.S. Patent Apr. 21, 2015 Sheet 12 of 13 US 9,015,678 B2

FIG. 13
WEBAPPLICATION WEBSERVER WEB BROWSER
7
960 970 S700 986 s705
WAIT FORREGUEST WAIT FOR INPUT
S715 S710
RECEIVE THE REOUEST TRANSMIT REQUEST

RESOURCE FILE APPLICATION


S730
EXECUTE PROCESSING
S735 S740
gyEIPROCESSED - RECEIVE THE output
RECEIVE THE OUTPUT
S745 S750
TRANSMIT THE PRO- TRANSMIT THE PRO
CESSED RESULTS CESSED RESULTS
S755
CREATE DISPLAY
CREEN USING
DEFAULT FONT S760
DISPLAY IT ON DISPLAY
S765

S770
NO

YES S775
CREATE FONT LIST

CREATE DISPLAY
SCREEN USING THE
DESIGNATED FONT

RECEIVE DESIGNATION
OF FONT

CREATE DISPLAY
SCREEN USING THE
DESIGNATED FONT

DISPLAY IT ON THE
DISPLAY

EXECUTE OTHER
PROCESSING
U.S. Patent Apr. 21, 2015 Sheet 13 of 13 US 9,015,678 B2

F.G. 14
FONT SELECTION
FONT LIST

EARESSEESARACTERA

s
DETECTION FONT

SORT FONT
MSP GOTHC

FIG. 15 1OOO

1010
CPU
1040 1 O15 102O 1025

RAM HOST GRAPHIC DISPLAY


CONTROLLER CONTROLLER DEVICE

1070 1030 s
HDD
1050
COMMUNICATION I/O
CD-ROM 1060
DRIVE
1080 1100
1110
SUPER I/O FLASH KMC
CONTROLLER ROM

1090

FDDRIVE
US 9,015,678 B2
1. 2
TESTING INTERNATIONALIZED mock-translating an externalized resource file to use it as the
SOFTWARE USING TEST RESOURCE FILE externalized resource file that approximates certain attributes,
AND TEST FONT Such as character length, of a target language. In this conven
tional technology, the mock translation includes placeholder
CROSS-REFERENCE TO RELATED data, e.g., characters, that expands the spacing allocated to the
APPLICATIONS text to accommodate for the spacing required for translations.
In a preferred embodiment, all English text that would appear
This application is a divisional of U.S. application Ser. No. on the graphical user interface (i.e., buttons, menus, pop-up
1 1/853,412, now U.S. Pat. No. 8,656,357, filed on Sep. 11, dialogs, dialog window titles, dialog text, error messages,
2007, which claims the benefit of priority of Japanese Patent 10 help windows, etc.) is expanded using tildes, and is enclosed
Application No. 2006-246177, which was filed on Sep. 11, with brackets, i.e., . This mock translation data is stored in
2006. Each referenced application is hereby incorporated by localization files and displayed in a Software application in
reference in its entirety. This application is also related to U.S. place of the English or foreign-language text. The GUI is then
Pat. No. 7,581,208, issued on Aug. 25, 2009, and U.S. Pat. tested by visually inspecting each screen. The programmer or
No. 8,286,136, issued on Oct. 9, 2012 15 proofreader is able to easily recognize many errors that would
occur if the GUI were to be displayed in a translated language,
FIELD OF THE INVENTION without requiring the ability to read any foreign languages.
These errors, referred to as internationalization errors,
The present invention relates to a technology for testing include truncation, expansion, alignment, or otherformatting
internationalized software executed in a plurality of language errors, and programming errors such as text that is hard
environments. More particularly, the present invention relates coded, text missing from localization files, localization files
to a technology concerning a test of an output to a user from missing from the program build, and text composed of more
the internationalized software executed in a language envi than one translated message (see U.S. Pat. No. 6,507,812 and
ronment different from that of an original language, which is U.S. Pat. No. 6,453.462). There also is a technology in which
capable of improving visibility of test objects to enable effi 25 narrow or single-width alphabetic characters of the original
cient testing. language are all replaced with wide or double-width alpha
betic characters to create a mock translation (see U.S. Pat. No.
BACKGROUND OF THE INVENTION 6.425,123). In these technologies, it is confirmed that on a
screen display of the output of the internationalized software
Software Supporting a plurality of languages is called 30 that performs processing by referring to the mock-translated
“internationalized software'. In the internationalized soft resource file, the added characters or the double-width alpha
ware, a text string part to be displayed on a screen is separated betic characters are displayed properly for each of the char
from the source code, and the text string part thus separated is acterstrings of the original language. If only a character string
stored as an externalized resource file. The externalized of the original language is displayed, it is a hard-coded char
resource file is referred to upon execution of the internation 35 acter string. Further, if any of the added characters or the
alized software, and used by the internationalized software to double-width alphabetic characters is replaced with another
make a screen display. When such a configuration is character, it is a garbled character.
employed, it is only necessary for a developer of the interna
tionalized software to translate the externalized resource file SUMMARY OF THE INVENTION
to another language to make the internationalized software 40
Support the other language. Moreover, once the externalized The invention improves techniques for internationalizing
resource file is translated, it is unnecessary to redo the trans Software by using mock translation files. A second file of
lation even if the execution code is changed. messages to be outputted by the Software is created from a
In a development process of Such internationalized soft first file of messages. The messages in the first file are written
ware, tests are conducted for various characteristics or 45 in a first language. The creating of the second file comprises
aspects (hereinafter, referred to as “test categories') to see for each message in the first file,
whether the internationalized software operates properly in a) applying specified rules to form a second message by
language environments of different countries. Among them, changing the character length of the second message,
the tests concerning an output to the user include one that b) filling in any blank characters in the second message
checks whether a message or other character string to be 50 with a dummy character,
displayed to the user has been separated from the source code c) inserting characters from the target language into pre
and externalized properly as a resource file. In other words, scribed places in the second message to form a second mes
this is a hard-coded character string detection test that con sage having both characters of the first language and charac
firms that the message or other character string to be dis ters of the target language, and
played to the user is not directly described (i.e., hard-coded) 55 d) copying the second message into the second file,
in the source code. There also is a validation test of a sort and executing the Software using the second file.
result that checks whether a list of character strings is sorted In another embodiment, a second file of messages to be
properly in the order defined in each language. Such as alpha outputted by the software is created from the first file of
betic order. Also conducted is a displayability test of lan messages. The messages in the first file are written in a first
guage-specific characters that checks whether characters spe 60 language. One or more test characters in a target language are
cific to each language are displayed properly without being selected. The creating of the second file comprises for each
garbled, for example. message in the first file, translating all characters in the first
Translation of the externalized resource file takes time. language corresponding to the test characters to the corre
Thus, in the development process, it is not feasible to use a sponding characters in the target language, and changing all
translated, externalized resource file for testing each problem 65 other characters in the message to a dummy visible character,
category described above in each desired language. For this copying the translated message into the second file and
reason, there was conventionally developed a method for executing the Software using the second file.
US 9,015,678 B2
3 4
In view of the foregoing, the invention improves the mock alized software, and to provide a data structure of a font used
translation of the conventional art. The first improvement is for the test. Another object of the present invention is to
that, for each string item in the resource file of the original ensure that hard-coded character strings are detected without
language, different characters of the translation target lan omission in the test of the internationalized software. A fur
guage that would likely cause a problem are added before and ther object of the present invention is to ensure that, when a
after, or only before, the first characters of the character plurality of character strings are sorted, determination as to
strings of the original language in the mock resource file. The whether the sort result is proper can be made irrespective of
second improvement is that marks indicating the beginning presence/absence of knowledge about the translation target
and the end of an assignment portion of a string item are language in the test of the internationalized software. Yet
added before and after the assignment portion in the mock 10 another object of the present invention is to facilitate deter
resource file. With these improvements, on the screen display mination as to whether there is any garbled character in the
of the output of the internationalized software performing test of the internationalized software.
processing by referring to the mock-translated resource file, To achieve the above-described objects, the present inven
different characters of the translation target language are dis tion provides a method for testing internationalized software
played in front of the character Strings of the original lan 15 executed by a computer as follows. Herein, the internation
guage. Accordingly, it has become possible to conduct the alized software refers to software that performs processing by
validation test of the sort result on the display screen of the referring to an externalized resource file and that is executed
internationalized software using the improved mock transla in a plurality of language environments. The method for
tion, which was not possible with the above-described con testing the internationalized software includes the steps of
ventional technologies. Furthermore, with the improved reading data from the externalized resource file written in a
mock translation, different characters of the translation target first language; generating a test resource file written in a
language of an arbitrary length can be added to different first second language from the externalized resource file written in
characters of the character Strings of the original language. the first language by converting characters of the first lan
Thus, in the improved mock translation, it has become pos guage included in the data to characters of the second lan
sible to conduct the displayability test for a greater number of 25 guage by referring to a conversion table having the characters
language-specific characters using a single resource file. Still of the first language and the characters of the second language
further, on the screen display of the internationalized software associated one for one with each other, executing the inter
using the improved mock translation, the marks indicating the nationalized software; and displaying output information out
beginning and the end of the assignment portion are displayed putted from the internationalized software that performs pro
before and after the assignment portion. As a result, the 30 cessing by referring to the test resource file as the externalized
assignment portion has become distinguishable, and accord resource file on a screen by using one of a plurality of fonts
ingly, in the improved mock translation, it has become pos prepared for respective test categories of the internationalized
sible to appropriately conduct the detection of the hard-coded software.
character string(s) for the assignment portion. Herein, character codes included in the output information
The improved testing method described above, however, 35 can be classified into three groups: a first group of a plurality
still has several problems. Firstly, in the improved testing of character codes corresponding to the characters of the first
method of the conventional art, although the assignment por language, which are not Supposed to be included in the output
tion may be identified, there still is a possibility that a hard information; a second group of a plurality of character codes
coded character string may be overlooked. Further, in the corresponding to the characters of the second language
improved testing method, although it may be possible to 40 included in the conversion table, which are supposed to be
confirm that the list of the character Strings is sorted as a result included in the output information; and a third group of a
of Sorting, a tester who does not have any knowledge about plurality of character codes not corresponding to either the
the translation target language cannot determine whether the characters of the first language or the characters of the second
sort result is correct or not. Even a tester having knowledge language included in the conversion table, which are not
about the translation target language will not be able to imme 45 supposed to be included in the output information. Further,
diately determine whether the sort result is correct or not for each of the plurality of fonts employing a prescribed coding
Japanese or other language having a great number of types of scheme uses different association rules when associating
characters. Furthermore, with the improved method, an character shapes to a group of a plurality of character codes
increased number of types of characters of the translation that are test objects in a test of the internationalized software
target language are displayed on the screen, making it impos 50 and a group of the other character codes in the prescribed
sible for the tester to immediately determine whether there is character coding scheme. Such that the character codes as the
any garbled character among the characters displayed on the test objects and the other character codes are distinguishable
SCC. from each other in a display of the output information using
Moreover, in the improved testing method, it is tried to the relevant font.
check for all the test categories on a single display screen of 55 Therefore, according to the present invention, the character
the internationalized software that performs processing by codes as the test objects are displayed in a manner distin
referring to the mock-translated resource file; this results in guishable from the other character codes, which improves
poor visibility of the test objects. If different externalized visibility of the test objects. While the test objects differ for
resource files suitable for the respective contents of the test each test category, according to the present invention, a plu
categories are prepared, however, it will be necessary to 60 rality of fonts are prepared for the respective test categories,
restart the internationalized software the number of times so that it is possible to provide a display screen suitable for the
corresponding to the number of test categories, which hinders test for each test category by only using the corresponding
efficient testing. font, without the need to restart the internationalized soft
In view of the foregoing, an object of the present invention Wa.
is to provide a method, apparatus and program for efficiently 65 Preferably, the step of displaying the output information
testing internationalized software with improved visibility of using one of the plurality of fonts includes the step of dis
the test objects and with no need of restarting the internation playing the output information using one font selected by a
US 9,015,678 B2
5 6
user from the plurality of fonts. Alternatively, the above step codes that are test objects in the test; a plurality of items of
includes the step of displaying the output information by first character shape information associated one for one with
Switching the font being used to one font selected by a user the plurality of first character codes according to a first rule; a
from the plurality of fonts. Further, preferably, the conversion plurality of second character codes that are other character
table has some of the characters of the first language associ codes in the prescribed character coding scheme; and a plu
ated one for one with some of the characters of the second rality of items of second character shape information associ
language that would likely cause a problem in terms of dis ated one for one with the plurality of second character codes
play. according to a second rule.
Further, preferably, the test categories include detection of Here, the plurality of first character codes correspond to
a hard-coded character string. In the font used for the detec 10
one of a plurality of character codes corresponding to the
tion of the hard-coded character string, the first group corre characters of the first language, a plurality of character codes
sponds to the group of a plurality of character codes that are corresponding to the characters of the second language
the test objects, and the character codes of the first group are
each associated with the character shape of the character of included in the conversion table, and a plurality of character
the first language corresponding to the relevant character 15 codes not corresponding to either the characters of the first
code without modification. Preferably, the above font causes language or the characters of the second language included in
each of the other character codes in the prescribed character the conversion table. When the first character code is detected
coding scheme to be associated with a same character shape. from an output of the internationalized software that performs
The same character shape is preferably a less frequently used processing by referring to the test resource file, the first char
symbol or an inconspicuous symbol Such as a hollow square acter shape information corresponding to the relevant first
symbol. character code is retrieved from the font data and used for
Further, preferably, the test categories include validity of a screen display. When the second character code is detected
sort result of character strings according to the order of char from the output, the second character shape information cor
acters defined in the second language. In the font used for the responding to the relevant second character code is retrieved
determination of validity of the sort result, the second group 25 from the font data, which is used for screen display.
corresponds to the group of a plurality of character codes that While the present invention has been explained above as
are the test objects, and the character codes of the second the method for testing the internationalized software, it is also
group are each associated with the character shape indicating possible to understand the present invention as an apparatus,
the order defined for the character of the second language a program, or a storage medium storing the program. Further,
corresponding to the relevant character code. Preferably, the 30
the features explained in conjunction with the method for
above font causes each of the other character codes in the
prescribed character coding scheme to be associated with a testing the internationalized software may be adapted to the
data structure of the font used for the test of the internation
same character shape. The same character shape is preferably alized Software explained as another aspect of the present
a less frequently used symbol or an inconspicuous symbol
Such as a hollow square symbol. 35 invention. Furthermore, the present invention explained as
Further, preferably, the test categories include displayabil the data structure of the font may also be understood as a
ity of characters specific to the second language. In the font recording medium storing the relevant data structure of the
used for the determination of displayability, the third group font.
corresponds to the group of a plurality of character codes that According to the present invention, it is possible to conduct
are the test objects, and the character codes of the third group 40 an efficient test concerning an output to a user of internation
are each associated with a same character shape. The same alized software executed in a language environment different
character shape is preferably a less frequently used symbol or from that of an original language, with improved visibility of
a conspicuous symbol. the test objects and with no need to restart the international
Further, preferably, the test categories include character ized software for each test category. Other advantages will be
string confirmation for confirming the character strings 45 explained in the following description of the embodiments of
included in the externalized resource file written in the first the present invention.
language. In the font used for the character string confirma
tion, the second group corresponds to the group of a plurality BRIEF DESCRIPTION OF THE DRAWINGS
of character codes that are the test objects, and the character
codes of the second group are each associated with the char 50 FIG. 1A shows an example of an externalized resource file
acter shape of the character of the first language that has the of a test object program, FIG. 1B shows an example of a part
character of the second language corresponding to the rel of a source code of the test object program, and FIG. 1C
evant character code as a converted-to character upon genera shows an example of an output Screen of the test object
tion of the test resource file. In the above test category, the first program;
group also corresponds to the group of a plurality of character 55 FIG. 2A shows an example of a mock-translated resource
codes that are the test objects, and the character codes of the file based on a conventional art, and FIG. 2B shows an
first group are each associated with the character shape of the example of an output Screen of the test object program;
character of the first language corresponding to the relevant FIG. 3 shows a configuration example of an apparatus for
character code without modification. creating a test resource file according to an embodiment of the
According to another aspect of the present invention, there 60 present invention and an apparatus for testing a test object
is provided a data structure of a font employing a prescribed program according to the embodiment of the present inven
character coding scheme used in a test of internationalized tion;
software that refers to a test resource file generated by con FIG. 4A shows an example of an externalized resource file
Verting all the characters of a first character included in an of a test object program, FIG. 4B shows an example of a
externalized resource file written in the first language to char 65 conversion table according to an embodiment of the present
acters of a second language one for one based on a conversion invention, and FIG. 4C shows an example of a test resource
table. The data structure includes: a plurality of first character file according to the embodiment of the present invention:
US 9,015,678 B2
7 8
FIGS. 5a and 5b show a flowchart illustrating an example ROM), an optical storage device, a transmission media Such
of a process flow of the apparatus for creating a test resource as those Supporting the Internet or an intranet, or a magnetic
file according to an embodiment of the present invention; storage device. Note that the computer-usable or computer
FIG. 6 shows an example of a display Screen having the readable medium could even be paper or another suitable
execution result of a test object program displayed using a medium upon which the program is printed, as the program
regular font; can be electronically captured, via, for instance, optical scan
FIG. 7A shows an example of a hard-coded character ning of the paper or other medium, then compiled, inter
detection font according to an embodiment of the present preted, or otherwise processed in a Suitable manner, if neces
invention, and FIG. 7B shows an example of a display screen sary, and then stored in a computer memory. In the context of
having the processed result of the test object program dis 10 this document, a computer-usable or computer-readable
played using the hard-coded character detection font; medium may be any medium that can contain, store, commu
FIG. 8A shows an example of a garbled character detection nicate, propagate, or transport the program for use by or in
fontaccording to an embodiment of the present invention, and connection with the instruction execution system, apparatus,
FIG. 8B shows an example of a display screen having the or device. The computer-usable medium may include a
processed result of the test object program displayed using 15 propagated data signal with the computer-usable program
the garbled character detection font; code embodied therewith, either in baseband or as part of a
FIG.9Ashows an example of a reverse font according to an carrier wave. The computer usable program code may be
embodiment of the present invention, and FIG.9B shows an transmitted using any appropriate medium, including but not
example of a display Screen having the processed result of the limited to the Internet, wireline, optical fiber cable, RF, etc.
test object program displayed using the reverse font; Computer program code for carrying out operations of the
FIG. 10A shows an example of a sort font according to an present invention may be written in an object oriented pro
embodiment of the present invention, and FIG. 10B shows an gramming language Such as Java R, Smalltalk, C++ or the
example of a display Screen having the processed result of the like. However, the computer program code for carrying out
test object program displayed using the sort font; operations of the present invention may also be written in
FIG. 11A shows a flowchart illustrating an example of a 25 conventional procedural programming languages, such as the
process flow of the apparatus for testing a test object program “C” programming language or similar programming lan
according to an embodiment of the present invention, and guages. The program code may execute entirely on the user's
FIG. 11B shows a flowchart illustrating an example of a computer, partly on the user's computer, as a stand-alone
process flow for creating a display screen of the processed Software package, partly on the user's computer and partly on
result using a designated font; 30 a remote computer or entirely on the remote computer or
FIG. 12 shows an implementation example of an overall server. In the latter scenario, the remote computer may be
system according to an embodiment of the present invention; connected to the user's computer through a local area network
FIG. 13 shows a flowchart illustrating an example of a (LAN) or a wide area network (WAN), or the connection may
process flow of the entire system shown in FIG. 12; be made to an external computer (for example, through the
FIG. 14 shows an example of a dialog box displayed for 35 Internet using an Internet Service Provider).
selection of a font to be used; and The present invention is described below with reference to
FIG. 15 shows an example of a hardware configuration of flowchart illustrations and/or block diagrams of methods,
the apparatus for creating a test resource file according to an apparatus (systems) and computer program products accord
embodiment of the present invention and the apparatus for ing to embodiments of the invention. It will be understood
testing a test object program according to an embodiment of 40 that each block of the flowchart illustrations and/or block
the present invention. diagrams, and combinations of blocks in the flowchart illus
trations and/or block diagrams, can be implemented by com
DETAILED DESCRIPTION OF THE INVENTION puter program instructions. These computer program instruc
tions may be provided to a processor of a general purpose
As will be appreciated by one skilled in the art, the present 45 computer, special purpose computer, or other programmable
invention may be embodied as a method, system, or computer data processing apparatus to produce a machine, such that the
program product. Accordingly, the present invention may instructions, which execute via the processor of the computer
take the form of an entirely hardware embodiment, an entirely or other programmable data processing apparatus, create
Software embodiment (including firmware, resident Software, means for implementing the functions/acts specified in the
micro-code, etc.) or an embodiment combining Software and 50 flowchart and/or block diagram block or blocks.
hardware aspects that may all generally be referred to herein These computer program instructions may also be stored in
as a “circuit,” “module' or “system.” Furthermore, the a computer-readable memory that can direct a computer or
present invention may take the form of a computer program other programmable data processing apparatus to function in
product on a computer-usable storage medium having com a particular manner, Such that the instructions stored in the
puter-usable program code embodied in the medium. 55 computer-readable memory produce an article of manufac
Any suitable computer usable or computer readable ture including instruction means which implement the func
medium may be utilized. The computer-usable or computer tion/act specified in the flowchart and/or block diagram block
readable medium may be, for example but not limited to, an or blocks.
electronic, magnetic, optical, electromagnetic, infrared, or The computer program instructions may also be loaded
semiconductor System, apparatus, device, or propagation 60 onto a computer or other programmable data processing
medium. More specific examples (a non-exhaustive list) of apparatus to cause a series of operational steps to be per
the computer-readable medium would include the following: formed on the computer or other programmable apparatus to
an electrical connection having one or more wires, a portable produce a computer implemented process such that the
computer diskette, a hard disk, a random access memory instructions which execute on the computer or other program
(RAM), a read-only memory (ROM), an erasable program 65 mable apparatus provide steps for implementing the func
mable read-only memory (EPROM or Flash memory), an tions/acts specified in the flowchart and/or block diagram
optical fiber, a portable compact disc read-only memory (CD block or blocks.
US 9,015,678 B2
10
The flowchart and block diagrams in the Figures illustrate string obtained by assigning the second argument to the vari
the architecture, functionality, and operation of possible able included in the character string of the first argument.
implementations of systems, methods and computer program Specifically, when executing the “showMessage' command,
products according to various embodiments of the present the test object program retrieves the key “MSG01 as the first
invention. In this regard, each block in the flowchart or block 5 argument from the resource file 100, and reads the corre
diagrams may represent a module, segment, or portion of sponding character string value "The status is {0}.” The test
code, which comprises one or more executable instructions object program then assigns “Green', received as the second
for implementing the specified logical function(s). It should argument, to {0} of the read character string value, to even
also be noted that, in Some alternative implementations, the tually display “The status is Green.” on the screen, as shown
functions noted in the block may occur out of the order noted 10 in 115 in FIG.1C. It is noted that {0} included in the character
in the figures. For example, two blocks shown in Succession string assigned to the key MSG01 is an “assignment portion'.
may, in fact, be executed Substantially concurrently, or the and the variable assigned to {0} has its value determined at
blocks may sometimes be executed in the reverse order, the time of execution.
depending upon the functionality involved. It will also be Now, the improved mock translation method and problems
noted that each block of the block diagrams and/or flowchart 15 thereofwill be explained with reference to FIGS. 2A and 2B.
illustration, and combinations of blocks in the block diagrams As described above, in the improved mock translation, dif
and/or flowchart illustration, can be implemented by special ferent characters of a translation target language that would
purpose hardware-based systems that perform the specified likely cause a problem are added before and after the first
functions or acts, or combinations of special purpose hard character of the character string of the original language for
ware and computer instructions. eachitem in the resource file of the original language. Further,
The terminology used herein is for the purpose of describ marks indicating the “beginning” and the “end” are added
ing particular embodiments only and is not intended to be before and after the assignment portion included in the
limiting of the invention. As used herein, the singular forms resource file. The mock-translated resource file 200 shown in
“a”, “an and “the are intended to include the plural forms as FIG. 2A corresponds to the resource file 100 shown in FIG.
well, unless the context clearly indicates otherwise. It will be 25 1A that is mock-translated according to the improved tech
further understood that the terms “comprises” and/or “com nology. Herein, the translation target language is Japanese.
prising, when used in this specification, specify the presence As seen from FIG. 2A, in this example, the characters
of stated features, integers, steps, operations, elements, and/ & G f 99
or components, but do not preclude the presence or addition and
of one or more other features, integers, steps, operations, 30
elements, components, and/or groups thereof. “4”
The corresponding structures, materials, acts, and equiva and the characters
lents of all means or step plus function elements in the claims
below are intended to include any structure, material, or act and
for performing the function in combination with other 35
& G 2: 99
claimed elements as specifically claimed. The description of are selected and added before and after the first characters of
the present invention has been presented for purposes of alphabets “T” and “G”, respectively, as the characters that
illustration and description, but is not intended to be exhaus would likely cause a problem. For the first characters of the
tive or limited to the invention in the form disclosed. Many other items, different Japanese characters are selected and
modifications and variations will be apparent to those of 40
added before and after the different alphabets. The first char
ordinary skill in the art without departing from the scope and
spirit of the invention. The embodiment was chosen and acter of each item is put in “()', facilitating identification of
described in order to best explain the principles of the inven the first character. Further, the characters
tion and the practical application, and to enable others of “Eff. '
ordinary skill in the art to understand the invention for various 45 and
embodiments with various modifications as are suited to the & G $3. 99
particular use contemplated. are added before and after the assignment portion {0}.
Prior to the description of the present invention, an exter FIG. 2B shows a screen 205 that is displayed when the test
nalized resource file of internationalized software, an object program, read for execution of the mock translation,
improved mock translation method and problems thereof will 50
executes the source code shown in FIG. 1B. Focusing on the
be explained with reference to FIGS. 1A, 1B, 1C, 2A, and 2B. character string “Green displayed in the field 210, the char
Hereinafter, the internationalized software is referred to as a acters
“program to be tested’ or “test object program’, and the “BE if ''
externalized resource file is simply referred to as a “resource and
file'. FIG. 1A shows, as an example of the resource file, a 55
resource file 100 of a test object program with English as the & G f:3. 99

original language. As shown in the figures, the resource file are displayed before and after “Green', with no Japanese
includes a plurality of items, each consisting of a key and a characters added before and after the first character “G”, and
character string to be assigned to the key. When the test object it is thus understood that this character string is a hard-coded,
program encounters a key at the time of execution, it searches 60 assigned character string. The first characters of the three
the resource file for the relevant key, and reads the value of the character strings in the list box 215 each have different Japa
character string to be assigned to the key. This operation will nese characters added before and after the same, and it is thus
now be described in more detail using a source code 105 understood that it is possible to carry out a validation test of a
shown in FIG. 1B and an output screen 110 of the test object sort result by executing the Sort command. Furthermore, the
program shown in FIG. 1C. 65 Japanese characters displayed before and after the first char
The command “showMessage()' included in the source acter “R” of the character string "Refresh the Status' dis
code 105 is a command to display on a screen a character played on the button 225 are different from the initially added
US 9,015,678 B2
11 12
Japanese characters, so that it is understood that there is a reference to FIGS. 3, 4A, 4B, 4C, 5A, and 5B. Subsequently,
problem in display of the characters a method of testing a test object program using the mock
. . A 's translated resource file and a plurality of fonts prepared for
and the respective test categories will be described with reference
ck-' to FIGS. 3, 7A, 7B, 8A, 8B,9A,9B, 10A, 10B, 11A, and 11B.
The portion in FIG. 3 delimited by a dotted line is a func
in the relevant portion. tional block diagram of an apparatus 300 for creating a test
However, the testing method utilizing such improved mock resource file according to an embodiment of the present
translation still has several problems as described above. One invention. The apparatus 300 includes: a first storage unit
problem is that, although the assignment portion may be 10 storing an original resource file 310 and a conversion table
identified, the hard-coded character string may be over 320; test resource file generating unit 330; and a second
looked. As for the character string having an assignment storage unit storing a test resource file 340. It is noted that the
portion, not only the original character string having a char first and second storage units may physically be a single
acter string assigned thereto, but also the character string in storage device. Further, while Unicode is employed as a pre
the assignment portion have to be confirmed whether it is a 15 scribed character coding scheme in the present embodiment,
hard-coded character string or not. The confirmation of the the present invention is not restricted thereto, and it is of
hard-coded character string is carried out based on the first course possible to employ any other character coding scheme.
character of the character string as described above. This The “character code” as used herein is a code associated with
means that, when the assignment portion is in the middle of a character, which is called a “code point in Unicode.
the character String, as is the case of the character string in the The original resource file 310 is an original resource file
field 210 of FIG. 2B, the confirmation of the hard-coded referred to by the test object program during execution. FIG.
character string may not be possible for the assignment por 4A shows, as an example of the original resource file 310, a
tion that is not positioned at the beginning of the character resource file 400 in which the original language is English. In
String. the present embodiment, the translation target language is
Another problem is that, even if it can be confirmed that the 25 Japanese. The conversion table 320 is a table in which the
list of the character strings is rearranged as a result of sorting, characters of the original language as the first language and
determination as to whether the sorting is proper is difficult. It the characters of the translation target language as the second
will be difficult for not only the tester who does not have any language are associated with each other one for one. In order
knowledge of the translation target language but also the to enable Such one-to-one mapping, it is required that the
tester who has knowledge thereof to immediately determine 30
range of the character codes of the characters used in the
whether the sorting has been correctly performed or not for a translation target language is greater than the range of the
language having a great number of characters like Japanese. character codes of the characters used in the original lan
Yet another problem is that in the testing method utilizing the guage. For example, English (ASCII code) uses the Smallest
improved mock translation, a large number of types of char range of the character codes, so that it is possible to select
acters of the translation target language are displayed on the 35 Japanese, Chinese, Korean or French as the translation target
screen, hindering immediate determination as to whether language. In contrast, when French is the original language,
there is any garbled character in the displayed characters. For although it may be possible to select Japanese or Chinese as
example, it is not possible to identify the garbled characters the translation target language, it is not possible to select
by seeing the display screen 205 in FIG. 2B alone. English. Preferably, in the conversion table 320, some of the
Furthermore, with the improved testing method, visibility 40 characters of the original language are associated one for one
of the test objects on the display screen is low, since a single with the characters of the translation target language that
display screen of the internationalized software that performs would likely cause a problem in terms of display.
processing by referring to a mock-translated, externalized Here, the characters that would likely cause a problem in
resource file is used to try to confirm the results all at once. On terms of display will be described with reference to Japanese
the other hand, if an externalized resource file suitable for the 45 characters by way of example. Firstly, the Japanese characters
test content is to be prepared for every test category, it will be ege 22
necessary to restart the internationalized software the number
of times corresponding to the number of test categories, hin & G JPA 99

dering efficient testing. and


In view of the foregoing, the present invention solves the 50 cy's
above-described problems by using a newly developed test each have the character code in which the second byte corre
resource file and a plurality of fonts prepared for the respec sponds to the bit pattern used in the English language envi
tive test categories. More specifically, the present invention ronment as a control code for line feed or the like, so that it
makes it possible to provide a display screen suitable for the may not be displayed properly in some type of the character
test for each test category, while preparing only one mock 55 coding scheme being used. Further, several Japanese charac
translated resource file for the test, by displaying the output ters including
from the test object program that performs processing by
referring to the resource file by using a plurality of fonts
prepared for the respective test categories. The problems spe may be converted to different characters in some type of the
cific to the respective test categories are solved by preparing 60 character coding scheme being used. For example, while the
a plurality of fonts for the respective test categories, and by character code of
making the character codes as the test objects distinguishable
from the character codes that are not the test objects, while is U+9E3F5 in Unicode, this is converted to OX88B1 in the
giving some thought to the character shapes to be associated character coding scheme called “MS932, whereas it is con
with the character codes. 65 verted to OXE9CB in the character coding scheme called
Firstly, a novel method of mock translating a resource file “CCSID 942. Even the characters other than those that are
according to the present invention will be described with known to possibly cause a problem may not be displayed
US 9,015,678 B2
13 14
properly. Accordingly, it is desirable in the conversion table a key from the read item and assigns it to a variable Key (step
320 that some of the characters of the original language are 525), and writes the variable Key to the test resource file 340
associated one for one with the characters of the translation (step 530).
target language that would likely cause a problem, such that Next, The test resource file generating unit 330 extracts a
the table includes both the normal characters and the charac character string value from the read item, and assigns it to a
ters that would likely cause a problem in terms of display. variable Text (step 535), and further reads one character from
FIG. 4B shows, as an example of the conversion table 320, the variable Text and assigns it to a variable X (step 540). For
a conversion table 405 in which English characters are asso confirmation of the assignment portion, The test resource file
ciated one for one with Japanese characters. In the conversion generating unit 330 confirms the value of the variable X, and
table 405, in the two columns on the left are the English 10 if it is a numerical character, it confirms whether the values
characters and the character codes assigned thereto, and in the before and after the variable X correspond to “K” and “”,
two columns on the right are the corresponding Japanese respectively (step 545). If the value of the variable X is not a
characters and the character codes assigned thereto. The con numerical character indicating the assignment portion (step
version table 320 defines the correspondence for the charac 545: NO), The test resource file generating unit 330 refers to
ters used in the original language, except the meta characters 15 the conversion table 320 to convert the character of the vari
that are symbols used when creating a pattern with regular able X, and assigns the converted character to a variable Y
expression. As seen from the conversion table 405, in Uni (step 550). If the value of the variable X is a numerical
code, the English characters except the meta characters are character indicating the assignment portion (step 545: YES),
assigned with the character codes in the range from U+0020 The test resource file generating unit 330 assigns the value of
to U+007E. Here, the English capital letters “S”, “T” and “U” the variableX as it is to the variable Y (step 555). It is assumed
are associated with that the conversion table 320 defines such that the characters
ege 22
“E” and “” become the same characters after the conversion.
& G PE 99
Thereafter. The test resource file generating unit 330 writes
and
the variable Y to the test resource file 340 (step 560). It then
25 confirms whether the character previously read from the vari
cy's able Text is the last character (step 565). If it is not the last
respectively, that would likely cause a problem. character (step 565: NO), the process returns to the step 540.
The test resource file generating unit 330 reads the original If it is the last character (step 565: YES), the process returns
resource file 310 and the conversion table 320 from the first to the step 515.
storage unit, and converts the characters of the first language 30 Returning to FIG. 3, the portion in FIG. 3 delimited by a
to the characters of the second language based on the conver dashed-dotted line shows a functional block diagram of an
sion table 320, to thereby generate a test resource file 340 apparatus 350 for testing a test object program using a mock
written in the second language from the resource file 310 of translated resource file and a plurality of fonts prepared for
the test object program written in the first language. The test respective test categories, according to an embodiment of the
resource file 340 thus generated is stored in the second storage 35 present invention. Herein, the apparatus 300 for creating the
unit as the resource file of the test object program. FIG. 4C test resource file and the apparatus 350 for testing the test
shows a test resource file 410 that is generated from the object program are explained separately for convenience of
original resource file 400 by converting the English charac the explanation. In effect, it is possible to implement the
ters to the Japanese characters based on the conversion table function of the apparatus 350 and the function of the appara
405. As seen from the figure, the test resource file 410 does 40 tus 300 with a single computer. The apparatus 350 includes:
not include any character of the original language of English. the second storage unit storing the test resource file 340, a test
An example of the process flow of the apparatus 300 object program execution unit 355, a display screen creation
according to the present embodiment will now be described unit 360, a font selection unit 365, and a third storage unit
with reference to the flowchart shown in FIGS. 5A and 5B. including a plurality of fonts prepared for the respective test
FIG. 5A is a flowchart illustrating an outline of the process 45 categories. The plurality of fonts included in the third storage
flow of the apparatus 300 of the present embodiment. The unit include: a default font 370, a hard-coded character detec
apparatus 300 firstly reads an original resource file 310 from tion font 375, a garbled character detection font 380, a reverse
the first storage unit (step 500). The apparatus 300 then con font 385, a sort font 390, and another font 395. It is noted that
verts the characters of the first language to the characters of the second storage unit and the third storage unit may physi
the second language based on the conversion table 320, to 50 cally be a same storage device.
generate a test resource file 340 written in the second lan The test resource file 340 stored in the second storage unit
guage from the original resource file 310 written in the first is a resource file written in a translation target language that is
language of the test object program (step 505). Lastly, the the second language, as explained above. The test resource
apparatus 300 stores the generated test resource file 340 to the file 340 is stored in the second storage unit as a resource file
second storage unit (step 510). 55 of the test object program. The test object program execution
Now, the process in the step 505 will be described in detail unit 355 executes the test object program. Upon execution of
with reference to FIG. 5B. Firstly, as pre-processing, the the test object program, the test object program execution unit
apparatus 300 reads the conversion table 320 from the first 355 firstly reads the test resource file 340 from the second
storage unit and an empty test resource file 340 from the storage unit and, thereafter, refers to the test resource file 340
second storage unit. Thereafter, the main process is started, 60 to execute processing of the test object program and outputs
and the test resource file generating unit 330 determines the processed results.
whether the original resource file 310 includes any readable The display screen creation unit 360 receives the processed
item (step 515). If there is no readable item (step 515: NO), results from the test object program, and creates a display
the process is terminated. If it determines that there is a screen of the processed results using the default font included
readable item (step 515: YES), the test resource file generat 65 in the third storage unit. At this time, the display Screen
ing unit 330 reads one item from the original resource file 310 creation unit 360 temporarily stores the processed results
(step 520). The test resource file generating unit 330 extracts received from the test object program in a buffer. The created
US 9,015,678 B2
15 16
display screen is transmitted to a display device for display. included in the output of the test object program that performs
When receiving a designation of a font from the font selection processing by referring to the test resource file 340 should be
unit 365, the display screen creation unit 360 reads the pro the character hard-coded in the source code, or one derived
cessed results of the test object program from the buffer, and from another resource that is not a test object. The character
newly creates a display Screen of the processed results using 5 codes corresponding to the characters of the translation target
the designated font. The created display Screen is again trans language as the second language included in the conversion
mitted to the display device for display. table 320, and the character codes not corresponding to either
The font selection unit 365, when receiving a selection the characters of the original language or the characters of the
request of a font to be used from a user via an input device translation target language included in the conversion table
such as a mouse, keyboard and the like, refers to the third 10 320, correspond to a plurality of character codes that are not
storage unit to confirm available fonts, and creates a dialog the test objects.
box for font selection. The font selection unit 365 transmits In the hard-coded character detection font 375, all the
the created dialog box to the display device. When receiving character codes that are not the test objects are associated with
a designation of the font to be used from the user, the font a same character shape in order to improve visibility of the
selection unit 365 notifies the display screen creation unit 360 15 characters of the original language as the test objects on a
of the designated font type. screen. The same character shape is preferably an inconspicu
Now, prior to the description of the plurality of fonts pre ous character shape Such as a hollow square or a blank, a less
pared for the respective test categories according to the frequently used character shape, or an inconspicuous and less
embodiment of the present invention, the processed results of frequently used character shape. On the other hand, the char
the test object program displayed using a normal or regular acter codes of the original language as the test objects are
font will be described. When the processed results of the test associated with the character shapes of the characters of the
object program that performs processing by referring to the original language corresponding to the relevant character
test resource file 410 shown in FIG. 4C are displayed using a codes without modification.
regular font, a display screen 660 as shown in FIG. 6 is FIG. 7A shows, as an example of the hard-coded character
obtained. It is noted that the display screen 110 shown in FIG. 25 detection font 375, a table 700 of the hard-coded character
1C is the display screen of the processed results of the test detection font in the case of creating a test resource file using
object program that performs processing by referring to the the conversion table 405 shown in FIG. 4B with English as the
original resource file 100. As described above, the test original language and Japanese as the translation target lan
resource file 410 does not include any English characters, and guage. In the leftmost column of the table 700 are the char
thus, it is Supposed that no English characters would be dis 30 acter codes, and in the rightmost column are glyphs in the
played on the output display Screen. Accordingly, the English hard-coded character detection font assigned to the corre
character string “Green” displayed in the field 665 in FIG. 6 sponding character codes. It is noted that the "glyph' refers to
is a hard-coded character string. In the display screen 660, a character shape assigned to a character code. Glyphs of a
however, there exist both Japanese characters and English regular font are added in the central column of the table 700
characters, making it hard for the tester to immediately detect 35 for reference. In the table 700, the character codes U+3000 to
the hard-coded character string. U+FFEA correspond to the Japanese characters included in
Further, the character string displayed on the button 680 in the conversion table 405. Since they are the character codes
FIG. 6 differs from the character string of MSG02 in the test that are not the test objects as explained above, here, they are
resource file 410, which means that it has garbled characters. each assigned with a hollow square character shape. In the
However, since there are many types of characters displayed 40 table 700, the character codes U+0020 to U+007E correspond
on the display screen 660, it is not possible for the tester to to the English characters. They are the character codes as the
determine that the character String displayed on the button test objects as explained above, and thus, they are each
680 includes garbled characters by seeing the display screen assigned with the character shape of the original character.
660 alone. Furthermore, the three character strings displayed The other character codes in the table 700 correspond to a
on the list box 670 in FIG. 6 include various Japanese char 45 plurality of other character codes of Unicode. Since they are
acters such as hiragana letters, Chinese letters, katakana let not the test objects as explained above, they are each assigned
ters, and symbols, and accordingly, when the tester executes with a hollow square character shape, as are the above-de
sorting, it is not possible for the tester to immediately deter scribed character codes. It should be noted that the number of
mine whether the sort result is correct or not. As described rows in the table 700 does not indicate the actual number of
above, when the test resource file according to the embodi 50 the character codes. FIG.7B shows a display screen 705 in the
ment of the present invention is used together with a regular case where the processed results of the test object program
font, it is not possible to provide a screen display suitable for that performs processing by referring to the test resource file
a test for each test category. 410 shown in FIG. 4C are displayed using the table 700 of the
Hereinafter, the plurality of fonts prepared for the respec hard-coded character detection font. In FIG. 7B, the charac
tive test categories according to the embodiment of the 55 ters other than the hard-coded character string “Green” shown
present invention will be explained. Firstly, the hard-coded in the field 710 are all displayed as the hollow square symbols.
character detection font 375 used for detection of hard-coded As such, when the hard-coded character detection font 375 is
character strings will be explained. In the detection of the used, the characters that are not the test objects are all dis
hard-coded character Strings, a plurality of character codes played in the same character shape, which allows the tester to
corresponding to the characters of the original language as the 60 readily detect the hard-coded characters without being misled
first language correspond to a plurality of character codes as by the characters that are not the objects of detection includ
the test objects, or, the objects of detection. Since the test ing those of the translation target language.
resource file 340 according to the present invention is created The garbled character detection font 380 will now be
by converting all the characters of the original language explained that is used for determination of displayability of
included in the original resource file 310 to the characters of 65 the characters specific to the translation target language as the
the translation target language based on the conversion table second language. In the determination of displayability, the
320, it can be said that any character of the original language character codes not corresponding to either the characters of
US 9,015,678 B2
17 18
the original language or the characters of the translation target processing by referring to the test resource file 410 shown in
language included in the conversion table 320 correspond to FIG. 4C are displayed using the table 800 of the garbled
a plurality of character codes as the test objects, or, the objects character detection font 380. In FIG.8B, the postal marks are
of detection. Since the test resource file 340 of the present displayed on the button 830, making it possible to immedi
invention is created by converting all the characters of the ately understand that garbled characters are displayed
original language included in the original resource file 310 to thereon. As such, when using the garbled character detection
the characters of the translation target language based on the font 380, the garbled characters are displayed in a prescribed
conversion table 320, the characters to be included in the character shape, thereby allowing the tester to readily detect
output of the test object program that has read the test the garbled characters even if the translation target language
resource file 340 should be the characters of the translation 10 has a great number of types of characters. Moreover, the
target language included in the conversion table 320. Never characters that are not the test objects. Such as those displayed
theless, the output may include the characters of the original in the list box 820, are displayed in the same, inconspicuous
language hard-coded in the Source code or derived from character shape, so that the tester can readily detect the
another resource other than the test object, as described above garbled characters, without being misled by the characters
in conjunction with the hard-coded character detection font 15 other than the objects of detection, such as the characters of
375. The relevant characters of the original language are not the translation target language, which are displayed correctly.
those displayed as a result of garbling. Therefore, if the output The reverse font 385 will now be explained that is used for
includes any character other than the characters of the trans confirmation of the character strings included in the resource
lation target language included in the conversion table 320 file written in the first language. In the confirmation of the
and the characters of the original language, it must be a original character strings, the character codes corresponding
character that is not Supposed to be displayed, i.e., a garbled to the characters of the original language and the character
character. codes corresponding to the characters of the translation target
As such, the character codes corresponding to the charac language included in the conversion table 320 correspond to
ters of the original language and the character codes corre a plurality of character codes as the test objects, or, the objects
sponding to the characters of the translation target language 25 of confirmation. Since the test resource file 340 of the present
included in the conversion table correspond to a plurality of invention is created by converting all the characters of the
character codes that are not the test objects. In the garbled original language included in the original resource file 310 to
character detection font 380, the character codes as the test the characters of the translation target language based on the
objects are all associated with a same character shape in order conversion table 320, it is not possible to obtain information
to improve visibility of the garbled characters as the test 30 regarding the original character Strings from the output Screen
objects on the screen. The same character shape is preferably of the test object program that performs processing by refer
a conspicuous character shape Such as a postal mark, or a ring to the test resource file 340. Thus, in order to obtain the
character shape less frequently used and conspicuous. On the information regarding the original character strings, the char
other hand, the character codes that are not the test objects are acter codes corresponding to the characters of the original
each associated with a same character shape that is different 35 language and the character codes corresponding to the char
from the character shape associated to the character codes as acters of the translation target language included in the con
the test objects. This same character shape is preferably an version table 320 are used. The character codes not corre
inconspicuous character shape Such as a hollow square or a sponding to either the characters of the original language or
blank. the characters of the translation target language included in
FIG. 8A shows, as an example of the garbled character 40 the conversion table 320 correspond to a plurality of character
detection font 380, a table 800 of the garbled character detec codes that are not the test objects.
tion font in the case of generating a test resource file based on For the purpose of obtaining the information regarding the
the conversion table 405 shown in FIG. 4B, with English as original character strings, the character codes corresponding
the original language and Japanese as the translation target to the characters of the translation target language included in
language. In the leftmost column of the table 800 are the 45 the conversion table 320 are each associated with the charac
character codes of the garbled character detection font 380, tershape of the character of the original language that has the
and in the rightmost column are glyphs assigned to the cor character of the translation target language corresponding to
responding character codes. Further, in the central column are the relevant character code as the “converted-to” character
glyphs in a regular font added for reference. In the table 800, upon generation of the test resource file 340. In this manner,
the character codes U+3000 to U+FFEA are those corre 50 it can be configured such that the character Strings included in
sponding to the Japanese characters included in the conver the original resource file 310 are each displayed in the original
sion table 405. As explained above, they are the character language on the output screen of the test object program that
codes that are not the test objects, and thus, a hollow square performs processing by referring to the test resource file 340
character shape is assigned to each of them. of the present invention. Further, the character codes corre
In the table 800, the character codes U+0020 to U+007E 55 sponding to the characters of the original language are each
are those corresponding to the English characters. They also assigned with the character shape of the character corre
are the character codes that are not the test objects as sponding to the relevant character code. This ensures that the
described above, and thus, a hollow square character shape is perfect information regarding the original character strings
assigned to each of them. The other character codes in the can be obtained even in the presence of hard-coded character
table 800 are a plurality of other character codes in Unicode. 60 string(s). Meanwhile, the character codes that are not the test
Since they are the character codes as the test objects as objects are each associated with a same character shape to
explained above, the character shape of postal mark is facilitate identification. It can be said that they are the char
assigned to each of them in this example. It should be noted acter codes of the garbled characters, as explained above in
that the number of rows in the table 800 does not indicate the conjunction with the garbled character detection font 380.
actual number of character codes. 65 That is, in the display Screen using the reverse font, it is not
FIG.8B shows a display screen 810 in the case where the only possible to obtain the information regarding the original
processed results of the test object program that performs character strings, but also possible to detect the garbled char
US 9,015,678 B2
19 20
acters. In this regard, the same character shape is preferably a 340 must include the characters of the translation target lan
conspicuous character shape Such as a postal mark, or a guage included in the conversion table 320. Accordingly, the
conspicuous and less frequently used character shape. character codes corresponding to the characters of the origi
FIG. 9A shows, as an example of the reverse font 385, a nal language as the first language, as well as the character
table 850 of the reverse font in the case of generating a test codes not corresponding to either the characters of the origi
resource file 340 based on the conversion table 405 shown in nal language or the characters of the translation target lan
FIG. 4B, with English as the original language and Japanese guage included in the conversion table 320, correspond to a
as the translation target language. In the table 850, to facilitate plurality of character codes that are not the test objects.
understanding, the character codes of the characters of the 10
In the sort font 390, in order to facilitate determination on
original, English language and the corresponding characters the screen as to whether the character Strings of the translation
are added in the leftmost two columns. Accordingly, the cen target language are sorted correctly according to the order of
tral column of the table 850 shows the character codes of the the characters defined in the translation target language, the
reverse font 385 and the rightmost column shows glyphs character codes as the test objects are each associated with a
assigned to the corresponding character codes. The column 15 character shape that indicates the order defined for the char
therebetween shows glyphs in a regular font. In the table 850, acter corresponding to the relevant character code. Mean
the character codes U+3000 to U+FFEA are those corre while, the character codes that are not the test objects are each
sponding to the Japanese characters included in the conver associated with a same character shape, which is preferably a
sion table 405. As explained above, they are the character less frequently used character shape, an inconspicuous char
codes as the test objects, so that they are assigned with the acter shape, or a less frequently used and inconspicuous char
character shapes of the original English characters before acter shape, Such as a hollow square or a blank.
conversion. FIG. 10A shows, as an example of the sort font 390, a table
Referring to the portion 855 in FIG. 9A delimited by a 900 of the sort font in the case of creating a test resource file
dotted line, the character code U+8868 is assigned with the 340 using the conversion table 405 shown in FIG. 4B with
character shape of 25 English as the original language and Japanese as the transla
“a 99
tion target language. In the leftmost column of the table 900
in the regular font. In the reverse font 385, the character code are the character codes, and in the rightmost column are
U+8868 is assigned with the character shape of “S”, which is glyphs in the sort font assigned to the corresponding character
the character corresponding to the character code U+0053 of codes. In the central column of the table 900, glyphs in a
English that has the character code U+8868 as the “converted 30
regular font are added for reference. In the table 900, the
to code. In the table 850, the character codes U+0020 to character codes U+3000 to U+FFEA are those corresponding
U+007E are those corresponding to the English characters. to the Japanese characters included in the conversion table
They are the character codes corresponding to the characters 405. They are the character codes as the test objects as
of the original language as explained above, and thus, the explained above, and thus, they are each assigned with the
character shapes of the characters of the original language are 35
assigned thereto without modification. The other character character shape indicating the order defined for the relevant
codes in the table 850 correspond to a plurality of other character. It is noted that the “order of the characters defined
character codes in Unicode. They correspond to the garbled in the translation target language' may be any order; how to
characters as explained above, so that the character shape of define the order of the characters depends on which kind of
the postal mark is assigned thereto in this example. It should 40 test is to be conducted. Herein, the order of the character
be noted that the number of rows in the table 850 does not codes of the Japanese characters included in the conversion
indicate the actual number of the character codes. table 405 is employed. For the character codes such as the
FIG.9B shows a display screen 860 in the case where the character code U+FFEA to which symbols are assigned in the
processed results of the test object program that read the test glyphs of the regular font, an inconspicuous character shape
resource file 410 shown in FIG. 4C at the time of activation 45 Such as a hollow square may be assigned instead of the num
are displayed using the table 850 of the reverse font. As seen ber like (93).
in FIG.9B, the character strings are displayed in the original, In the table 900, the character codes U+0020 to U+007E
English language except for the portion of the button 880 are those corresponding to the English characters. The other
having the garbled characters, and the screen is approxi character codes in the table 900 correspond to a plurality of
mately the same as the original display screen 110 shown in 50 other character codes in Unicode. Since they are the character
FIG. 1C. As such, when using the reverse font 385, the tester codes that are not the test objects as described above, they are
can readily detect the garbled characters while he/she can each assigned with a hollow square character shape in this
confirm the original character strings without the need to example. It should be noted that the number of rows in the
open the original resource file. table 900 does not indicate the actual number of the character
The sort font 390 will now be explained that is used for 55 codes. FIG. 10B shows a display screen 905 in the case where
determination of validity of the sort result of the character the processed results of the test object program that performs
strings according to the order of the characters defined in the processing by referring to the test resource file 410 shown in
translation target language as the second language. In the FIG. 4C are displayed using the table 900 of the sort font.
determination of validity of the sort result, the character codes Referring to FIG. 10B, the characters of the character strings
corresponding to the characters of the translation target lan 60 to be listed on a list box 915 are all displayed as the numbers.
guage included in the conversion table 320 correspond to a Thus, determination as to whether a sort result when execut
plurality of character codes as the test objects. Since the test ing the sort command by clicking on the button 920 (see the
resource file 340 of the present invention is created by con button 125 in FIG.1C) is corrector not can readily be made by
Verting all the characters of the original language included in checking the numbers corresponding to the first characters of
the original resource file 310 to the characters of the transla 65 the respective character Strings (if they are the same number,
tion target language based on the conversion table 320, the the numbers of the following characters; this applies herein
output of the test object program that read the test resource file after as well). As such, when using the sort font 390, it is
US 9,015,678 B2
21 22
readily possible to determine whether the sorting is corrector created display screen to the display device (step 655). The
not even if the translation target language has a great number process then returns to the step 625.
of types of characters. Now, referring to FIG. 11B, the process in the step 650 will
The four fonts described above, i.e., the hard-coded char be explained in detail. Firstly, the display screen creation unit
acter detection font 375, the garbled character detection font 360 reads the processed results of the test object program
380, the reverse font 385, and the sort font 390, can be created from the buffer (step 660). The display screen creation unit
for example in the following manner. The existing font file is 360 determines whether the read processed results include
copied and given a new name. The newly created font file is data to be processed next (step 665). If there is no data to be
opened using a commercially available font editor or the like, processed next (step 665:NO), the process is terminated here.
and the character shapes to be assigned to the character codes 10 If there is any data to be processed next (step 665: YES), the
are edited as appropriate to create any of the above-described display screen creation unit 360 reads the data to be processed
fonts of the present invention. It is of course possible to create next from the processed results (step 670), and determines
the font of the present invention from the beginning by using whether the data includes any character code (step 675). If it
includes no character code (step 675: NO), the display screen
a font editor. As for the character coding scheme designated 15 creation unit 360 creates a part of the display screen based on
when creating a font according to the present invention, any the data to be processed without modification (step 680). If it
character coding scheme may be selected as long as it is determined in the step 675 that at least one character code
includes the character set of the original language and the is included, the display screen creation unit 360 retrieves the
character set of the translation target language. character shape assigned to the relevant character code from
Hereinafter, an example of a process flow for testing a test the font designated by the user (step 685), and uses the
object program by using a mock-translated resource file and a retrieved character shape to create a part of the display Screen
plurality of fonts prepared for respective test categories based on the data to be processed (step 690).
according to an embodiment of the present invention will be Each font according to the present invention includes a
explained with reference to the flowchart shown in FIG. 11A. plurality of first character codes that are to be the test objects,
Firstly, as pre-processing, a test resource file 340 is stored in 25 a plurality of items of first character shape information asso
the second storage unit, and a plurality of fonts prepared for ciated one for one with the first character codes according to
the respective test categories are stored in the third storage a first rule, a plurality of second character codes that are the
unit together with a regular font, in Such a manner that they other character codes of a prescribed character coding
can be referred to by the test object program execution unit scheme, and a plurality of items of second character shape
355, the display screen creation unit 360 and the font selec 30 information associated one for one with the second character
tion unit 365. In order for the fonts to be actually used, it is codes according to a second rule. Accordingly, in the case
necessary to install the fonts into a computer that uses the where any font of the present invention is designated in the
fonts. The installing method will be explained later in con step 645 shown in FIG. 11A, if the character code included in
junction with an implementation example. As the processing the data to be processed is the first character code that is the
starts, firstly, the test object program execution unit 355 reads 35 test object, then the display screen creation unit 360 retrieves
the test resource file 340 from the second storage unit (step from the font the first character shape information assigned to
600). The test object program execution unit 355 performs the relevant first character code according to the first rule, and
various processing of the test object program by referring to uses the information for screen display. If the character code
the test resource file 340 (step 605), and outputs the processed included in the data to be processed is the second character
results (step 610). 40 code that is not the test object, the display Screen creation unit
The display screen creation unit 360 receives the processed 360 retrieves from the font the second character shape infor
results from the test object program, and creates a display mation assigned to the second character code according to the
screen of the processed results by using a default font second rule, and uses the information for screen display.
included in the third storage unit (step 615). At this time, the Accordingly, on the display screen, the first character code as
display screen creation unit 360 temporarily stores the pro 45 the test object and the second character code that is not the test
cessed results received from the test object program in a object are displayed in a distinguishable manner. After the
buffer. The display screen creation unit 360 transmits the step 680 or the step 690, the process returns to the step 665.
created display screen to a display device (step 620). The font Hereinafter, an implementation example of the present
selection unit 365 waits for an input from the user (step 625), invention will be described with reference to FIGS. 12-14.
and upon reception of the input, it determines whether the 50 FIG. 12 shows an implementation example of a system 950
received input corresponds to a font selection request (step implementing the present invention. The system 950 includes
630). If it is not the font selection request (step 630: NO), the a Web server 970, a storage device 955 connected to the Web
process is terminated here. If it is the font selection request server 970, a client 975 connected to the Web server 970 via
(step 630:YES), the font selection unit 365 confirms available a network, and a storage device 980 connected to the client
fonts by referring to the third storage unit, and creates a 55 975. The storage device 955 includes a Web application 960
display screen for font selection (step 635). The font selection as a test object program, and a test resource file 965. The
unit 365 then transmits the created display screen for font storage device 980 includes a Web browser 985 and a plurality
selection to the display device to be displayed on the screen of fonts 990 prepared for the respective test categories.
(step 640). The Web server 970, when receiving a processing request
When the font selection unit 365 receives a designation of 60 from the client 975 via the network, activates the Web appli
the font to be used from the user (step 645), it provides the cation 960 that executes the processing. Further, when receiv
display Screen creation unit 360 with information regarding ing processed results from the Web application 960, the Web
the type of the designated font. The display screen creation server 970 transmits the processed results to the client 975
unit 360 reads the processed results of the test object program who requested the processing via the network. The Web
from the buffer, and newly creates a display screen of the 65 application 960 as the test object program is loaded to a RAM
processed results using the font selected by the user (step of the Web server 970 from the storage device 955, and
650). The display screen creation unit 360 again transmits the executed by a central processing unit (CPU) of the Web server
US 9,015,678 B2
23 24
970, to thereby function as the test object program execution font selection request (step 770). If it is the font selection
unit 355 shown in FIG.3. The Web application 960 reads the request (step 770: YES), the Web browser 985 refers to the
test resource file 965 from the storage device 955 at the time storage device 980 to check the available fonts, and creates a
of activation, to execute the requested processing by referring list of available fonts including the plurality of fonts prepared
to the relevant test resource file 965. The processed results for the respective test categories according to the present
outputted from the Web application 960 are passed to the Web invention (step 775).
Server 970.
The Web browser 985 uses the created list to display a
The client 975 activates the Web browser 985 in response to dialog box for font selection on the display of the client 975
a request from a tester who tests the Web application 960. The (step 780) (see FIG. 14), and waits for a designation of the
Web browser 985 is loaded from the storage device 980 to a 10
font from the tester. In response to an input of the font desig
RAM of the client 975, and executed by a CPU of the client nation from the tester (step 785), the Web browser 985 uses
975, to function as the display screen creation unit 360 and the the designated font to display the processed results again
font Selection unit 365 shown in FIG. 3. The Web browser
985, in response to an input of the tester, requests the process (steps 790, 795). In the case of NO in the step 770, i.e., if the
ing provided by the Web application 960 from the Web server 15 input from the tester is not the font selection request, the
970. When receiving the processed results from the Web process proceeds to the step 800, where the Web browser 985
server 970, the Web browser 985 serving as the display screen executes other processing. After the step 795 or the step 800,
creation unit 360 creates a display screen of the processed the process returns to the step 765, where the Web browser
results using a default font, and displays it on a display of the 985 again waits for an input from the tester. While the pro
client 975. cesses in the steps 765 through 795 are repeated, when the
When receiving a font selection request from the tester, the fonts are switched by the tester among those prepared for the
Web browser 985 serving as the font selection unit 365 respective test categories according to the present invention,
acquires a list of available fonts by referring to the fonts stored the corresponding display screens as shown in FIGS. 7B, 8B,
in the storage device 980 or by calling a function for acquiring 9B and 10B are displayed on the display of the client in turn.
available font names, and displays a dialog box for font selec 25 FIG. 15 shows an example of a hardware configuration of
tion on the display of the client 975. When receiving a des the apparatus 300 for creating a test resource file according to
ignation of the font to be used from the tester, the Web the present invention. FIG. 15 also shows an example of a
browser 985 uses the designated font to display again the hardware configuration of the apparatus 350 for testing a test
processed results on the display of the client 975. object program using a mock-translated resource file and a
In order to allow the Web browser 985 to refer to the 30 plurality of fonts prepared for the respective test categories,
plurality of fonts 990 prepared for the respective test catego according to the present invention. FIG. 15 may also be
ries according to the present invention, it is necessary to regarded as an example of a hardware configuration of a
install the fonts 990 into the client 975. Such installation is computer when implementing the function of the apparatus
carried out by an operating system (OS) running on the client 300 and the function of the apparatus 350 in a single com
975. For example, when using Microsoft Windows (regis 35 puter. In the system 950 explained referring to FIGS. 12-14,
tered trademark) XP as the OS, the fonts are installed using the apparatus 350 is configured with two computers, i.e., the
the Fonts in the Control Panel functioning to add, modify and Web server 970 and the client 975. In such a case, the hard
manage the fonts of the computer. There is “Install new font ware configuration shown in FIG. 15 may be regarded as an
prepared in the file menu of the Fonts. When using Microsoft example of the hardware configuration of each of the Web
Windows (registered trademark) versions before XP, the font 40 Server 970 and the client 975.
management software called Adobe Type Manager (ATM) A system 1000 includes: a CPU peripheral portion that
can be used. Once the ATM is installed into the computer, all includes a CPU 1010 and a RAM 1040 connected to each
that is needed is to drag and drop the font file into the system other by a host controller 1015, a graphic controller 1020, and
folder and restart the computer. a display device 1025; an input/output portion that includes a
A process flow of the system 950 will now be explained 45 communication interface 1070, a hard disk drive 1050 and a
with reference to the flowchart in FIG. 13. The Web server CD-ROM drive 1060 that are connected to the host controller
970 waits for a request from the client in the step 700. The 1015 by an input/output controller 1030; and a legacy input/
Web browser 985 as the client waits for an input from the output portion that includes a super I/O controller 1080 con
tester (step 705). When receiving the request for the process nected to the input/output controller 1030, a flexible disk
ing provided by the Web application 960, the Web browser 50 drive 1090 connected to the super I/O controller 1080, a flash
985 transmits the request to the Web server 970 (step 710). In ROM 1100, and a keyboard mouse controller 1110.
response to reception of the request (step 715), the Web server The host controller 1015 connects the CPU 1010 with the
970 activates the Web application 960 (step 720). Upon acti RAM 1040, the CPU 1010 accessing the RAM 1040 at a high
vation, the Web application 960 reads the test resource file transfer rate. The CPU 1010 operates based on a program
according to the present invention (step 725), and refers to the 55 stored in a hard disk to control the portions. The program for
test resource file to execute the requested processing (step testing the test object program according to the present inven
730). The Web application 960 outputs processed results and tion is stored in a recording medium Such as an optical record
passes them to the Web server 970 (step 735). ing medium like a flexible disk, CD-ROM, DVD or PD, a
In response to reception of the processed results (step 740), magneto-optical recording medium like an MD, or a semi
the Web server 970 transmits the processed results to the Web 60 conductor memory like an IC card, and provided to a user.
browser 985 (step 745). When receiving the processed results Alternatively, the program for testing the test object program
(step 750), the Web browser 985 creates a display screen of may be downloaded from an external computer via the net
the processed results using a default font (step 755), and work. Similarly, the plurality of fonts prepared for the respec
displays the same on the display of the client 975 (step 760). tive test categories according to the present invention are
The Web browser 985 waits for an input from the tester (step 65 stored in the recording medium such as the optical recording
765). Upon reception of the input from the tester, the Web medium like a flexible disk, CD-ROM, DVD or PD, the
browser 985 determines whether the input corresponds to a magneto-optical recording medium like an MD, or the semi
US 9,015,678 B2
25 26
conductor memory like an IC card, or alternatively down the present invention has been presented for purposes of
loaded via the network, and provided to the user. illustration and description, but is not intended to be exhaus
The input/output controller 1030 connects the host control tive or limited to the invention in the form disclosed. Many
ler 1015 with the communication interface 1070, the hard modifications and variations will be apparent to those of
disk drive 1050 and the CD-ROM drive 1060, which are ordinary skill in the art without departing from the scope and
relatively high-speed input/output devices. The communica spirit of the invention. The embodiment was chosen and
tion interface 1070 communicates with another computer via described in order to best explain the principles of the inven
the network. The CD-ROM drive 1060 reads a program or tion and the practical application, and to enable others of
data from a CD-ROM, and provides the same to the CPU ordinary skill in the art to understand the invention for various
1010 via the input/output controller 1030. The input/output 10 embodiments with various modifications as are suited to the
controller 1030 is connected with a flash ROM 1100 and with particular use contemplated.
the relatively low-speed input/output devices such as the flex We claim:
ible disk drive 1090 and the keyboard mouse controller 1110. 1. A non-transitory computer readable storage medium
The flash ROM 1100 stores a boot program executed by the containing computer code, which when executed by a com
CPU 1010 upon activation of the device system 1000, a pro 15
puter, causes the computer to perform the steps of:
gram dependent on hardware and others. The flexible disk creating a second file of messages to be outputted by an
drive 1090 reads a program or data from a flexible disk, and internationalized software from a first file of messages,
provides the same to the super I/O controller 1080 via the wherein the messages in the first file are written in a first
RAM 1040. The super I/O controller 1080 connects the flex language, wherein the messages in the second file
ible disk and various input/output devices via parallel port,
serial port, keyboard port, mouse port and the like. include characters of a second language, and wherein the
The flowchart and block diagrams in the Figures illustrate creating of the second file of messages comprises, for
the architecture, functionality, and operation of possible each message in the first file:
implementations of systems, methods and computer program a) applying specified rules to a first message to form a
products according to various embodiments of the present 25 second message by changing the character length of a
invention. In this regard, each block in the flowchart or block character string of the first message,
diagrams may represent a module, segment, or portion of b) filling in any blank characters in the character string of
code, which comprises one or more executable instructions the first message with a dummy character,
for implementing the specified logical function(s). It should c) inserting characters from the second language into
also be noted that, in Some alternative implementations, the 30 prescribed places in the character string of the first
functions noted in the block may occur out of the order noted message to form the second message having both
in the figures. For example, two blocks shown in succession characters of the first language and characters of the
may, in fact, be executed Substantially concurrently, or the Second language, and
blocks may sometimes be executed in the reverse order, d) copying the second message into the second file of
depending upon the functionality involved. It will also be 35 messages, and executing the internationalized soft
noted that each block of the block diagrams and/or flowchart ware using the second file of messages.
illustration, and combinations of blocks in the block diagrams 2. The non-transitory computer readable storage medium
and/or flowchart illustration, can be implemented by special of claim 1, wherein the computer executed Step of inserting
purpose hardware-based systems that perform the specified characters from the second language into prescribed places in
functions or acts, or combinations of special purpose hard 40 the character string of the first message further comprises:
ware and computer instructions. inserting characters at the beginning of the character String
The terminology used herein is for the purpose of describ of the first message.
ing particular embodiments only and is not intended to be 3. The non-transitory computer readable storage medium
limiting of the invention. As used herein, the singular forms of claim 1, wherein the computer executed Step of inserting
“a”, “an and “the are intended to include the plural forms as 45 characters from the second language into prescribed places in
well, unless the context clearly indicates otherwise. It will be the character string of the first message further comprises:
further understood that the terms “comprises” and/or “com inserting characters at the end of the character String of the
prising, when used in this specification, specify the presence first message.
of stated features, integers, steps, operations, elements, and/ 4. The non-transitory computer readable storage medium
or components, but do not preclude the presence or addition 50 of claim 1, wherein the computer executed Step of inserting
of one or more other features, integers, steps, operations, characters from the second language into prescribed places in
elements, components, and/or groups thereof. the character string of the first message further comprises:
The corresponding structures, materials, acts, and equiva determining if there is a substitution variable in the char
lents of all means or step plus function elements in the claims acter string of the first message, and
below are intended to include any structure, material, or act 55 if so, enclosing the substitution variable with characters
for performing the function in combination with other Selected from the second language.
claimed elements as specifically claimed. The description of k k k k k

You might also like