Abstract: A method and system is provided for automating internationalization testing using an internationalization non-functional automation framework. The method is performed by identifying and validating base language of a software application, validating languages other than the identified base language in scope of testing of said software application, comparing test results and test reports post said validation of languages other than the identified base language and publication of said test reports.
FORM 2
THE PATENTS ACT, 1970 (39 of 1970) & THE PATENTS RULES, 2003
COMPLETE SPECIFICATION
(See section 10, rule 13)
1. Title of the invention: METHOD AND SYSTEM FOR AUTOMATION OF
INTERNATIONALIZATION TESTING
2. Applicant(s)
NAME NATIONALITY ADDRESS
TATA CONSULTANCY Indian Nirmal Building, 9th Floor,
SERVICES LIMITED Nariman Point, Mumbai,
Maharashtra 400021, India
3. Preamble to the description
COMPLETE SPECIFICATION
The following specification describes the invention and the manner in which it is to be
performed.
FIELD OF THE INVENTION
The present application generally relates to automation of internationalization testing. More particularly, the invention provides a method and system for automating internationalization testing using an internationalization non-functional automation framework.
BACKGROUND
[001] The Current method of internationalization testing is purely manual and results in a lot of redundant and repetitive effort. Prior art suggests copying and renaming the verification points for plurality of language specific files and manually replacing selected entries and, thus, making the process repetitive and manual to a large extent. Features such as one time scripting and automated language pack selection are not a part of the prior art. Prior art also suggests automated method to validate transmitted and received HTTP data generated for various mechanical communications within a software application’s components, but none suggest comparison of plain texts.
[002] Thereby, automating internationalization testing using an internationalization nonfunctional automation framework which also supports localization testing across various languages, operating systems, and databases for web as well as desktop based software applications and reducing the testing efforts to a large extent is still considered to be one of the biggest challenges of the technical domain.
SUMMARY OF THE INVENTION
[003] Before the present methods, systems, and hardware enablement are described, it is to be understood that this invention is not limited to the particular systems, and methodologies described, as there can be multiple possible embodiments of the present invention which are not expressly illustrated in the present disclosure. It is also to be understood that the terminology used in the description is for the purpose of describing the particular versions or embodiments
only, and is not intended to limit the scope of the present invention which will be limited only by the appended claims.
[004] The present disclosure envisages a method and system which can automate internationalization testing using an internationalization non-functional automation framework.
[005] In an embodiment of the invention, a method for automating internationalization testing using an internationalization non-functional automation framework is provided. The method comprises processor implemented steps of identifying and validating base language of a software application using a language identification module (202), validating languages other than the identified base language in scope of testing of said software application using a validation module (204), comparing test results and test reports post said validation of languages other than the identified base language using a comparison module (206) and publication of said test reports using a publication module (208).
[006] In another embodiment of the invention, a system for automating internationalization testing using an internationalization non-functional automation framework is provided. The system comprises of a processor, a data bus coupled to the processor and a computer-usable medium embodying computer code, wherein the computer-usable medium is coupled to the data bus and the computer program code comprising instructions executable by said processor and configured for operating a language identification module (202) adapted for identifying and validating base language of a software application, a validation module (204) adapted for validating languages other than the identified base language in scope of testing of said software application, a comparison module (206) adapted for comparing test results and test reports post said validation of languages other than the identified base language and a publication module (208) adapted for publication of said test reports.
BRIEF DESCRIPTION OF THE DRAWINGS
[007] The foregoing summary, as well as the following detailed description of preferred embodiments, are better understood when read in conjunction with the appended drawings. For
the purpose of illustrating the invention, there is shown in the drawings exemplary constructions of the invention; however, the invention is not limited to the specific methods and system disclosed. In the drawings:
[008] Figure 1 shows a flow chart illustrating method for automating internationalization testing using an internationalization non-functional automation framework;
[009] Fig. 2 shows a block diagram of a system for automating internationalization testing using an internationalization non-functional automation framework.
DETAILED DESCRIPTION OF THE INVENTION
[0010] Some embodiments of this invention, illustrating all its features, will now be discussed in detail.
[0011] The words "comprising," "having," "containing," and "including," and other forms thereof, are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items.
[0012] It must also be noted that as used herein and in the appended claims, the singular forms "a," "an," and "the" include plural references unless the context clearly dictates otherwise. Although any systems and methods similar or equivalent to those described herein can be used in the practice or testing of embodiments of the present invention, the preferred, systems and methods are now described. In the following description for the purpose of explanation and understanding reference has been made to numerous embodiments for which the intent is not to limit the scope of the invention.
[0013] One or more components of the invention are described as module for the understanding of the specification. For example, a module may include self-contained component in a hardware circuit comprising of logical gate, semiconductor device, integrated circuits or any other discrete
component. The module may also be a part of any software programme executed by any hardware entity for example processor. The implementation of module as a software programme may include a set of logical instructions to be executed by a processor or any other hardware entity.
[0014] The disclosed embodiments are merely exemplary of the invention, which may be embodied in various forms.
[0015] The elements illustrated in the Figures interoperate as explained in more detail below. Before setting forth the detailed explanation, however, it is noted that all of the discussion below, regardless of the particular implementation being described, is exemplary in nature, rather than limiting.
[0016] Method steps of the invention may be performed by one or more computer processors executing a program tangibly embodied on a computer-readable medium to perform functions of the invention by operating on input and generating output. Suitable processors include, by way of example, both general and special purpose microprocessors. Generally, the processor receives (reads) instructions and data from a memory (such as a read-only memory and/or a random access memory) and writes (stores) instructions and data to the memory. Storage devices suitable for tangibly embodying computer program instructions and data include, for example, all forms of non-volatile memory, such as semiconductor memory devices, including EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROMs. Any of the foregoing may be supplemented by, or incorporated in, specially-designed ASICs (application-specific integrated circuits) or FPGAs (Field-Programmable Gate Arrays). A computer can generally also receive (read) programs and data from, and write (store) programs and data to, a non-transitory computer-readable storage medium such as an internal disk (not shown) or a removable disk.
[0017] The present disclosure provides a method and system for automating internationalization testing.
[0018] The present disclosure envisages the system which can automate internationalization testing using an internationalization non-functional automation framework.
[0019] Referring to Figure 1, it is a flow chart illustrating method for automating internationalization testing using an internationalization non-functional automation framework.
[0020] The process starts at step 102, base language of a software application is identified and validated. At step 104, languages other than the identified base language in scope of testing of said software application are validated. At step 106, test results and test reports post said validation of languages other than the identified base language are compared. Finally, at step 108, the test reports are published.
[0021] Referring to Figure 2, it is a block diagram of a system for automating internationalization testing using an internationalization non-functional automation framework. The system (200) comprises of a language identification module (202), a validation module (204), a comparison module (206) and a publication module (208).
[0022] According to an embodiment of the invention, the method for automating internationalization testing using an internationalization non-functional automation framework comprises of identifying and validating base language of a software application using a language identification module (202), validating languages other than the identified base language in scope of testing of said software application using a validation module (204), comparing test results and test reports post said validation of languages other than the identified base language using a comparison module (206) and publication of said test reports using a publication module (208).
[0023] According to another embodiment of the invention, the present invention provides for automating multi-language in internationalization testing using an internationalization nonfunctional automation framework (INAF). The internationalization non-functional automation framework supports internationalization and localization testing across various languages, operating systems, and databases for web as well as desktop based software applications. In an
embodiment, the internationalization non-functional automation framework is operating system and database independent.
[0024] According to another embodiment of the invention, in the language identification module (202), the internationalization non-functional automation framework fetches data from property files which are stored in servers and stores them in temporary memory of an automation tool selected and engaged for the automated validation. This is the static and dynamic content, defined technically for the application, to be displayed on the user interface of the software application. The internationalization non-functional automation framework captures the texts from the user interface of the software application during run time using an automation tool selected and engaged for the automated validation and validates with these data with the data stored in its temporary memory, which is the data from property files. The blocked memory gets released after each test run to facilitate clearance of unwanted CPU memory and prevents performance issues and lag during test script execution. The data fetched from the property files is rendered into a structured array. Each text data to be validated is picked up from the array and has an unique identifier. These unique identifier remain same for the all the objects defined in the application irrespective of the language selection for their corresponding texts to be rendered on user interface for different languages supported by the application. Using the internationalization non-functional automation framework (INAF), the expected texts to be displayed for the logical names of the objects are validated automatically for the target language to be validated for any software application.
[0025] According to another embodiment of the invention, in the validation module (204), languages other than the identified base language in scope of testing of said software application are validated. Validation of texts rendered on the user interface for any specific language, among the language options to be tested in scope for the application with internationalization nonfunctional automation framework (INAF), is governed by a control flag to select the desired language option.
[0026] According to another embodiment of the invention, in the comparison module (206), test results and test reports post the validation of languages other than the identified base language
are compared. The validation error percentage is reduced to almost nil by the end of the functioning of the comparison module (206).
[0027] According to another embodiment of the invention, in the publication module (208), the test reports are published. The publication of said test reports is performed in an automated manner.
I/We Claim:
1. A method for automating internationalization testing using an internationalization non
functional automation framework , said method comprising processor implemented steps
of:
identifying and validating base language of a software application using a language
identification module (202);
validating languages other than the identified base language in scope of testing of said
software application using a validation module (204);
comparing test results and test reports post said validation of languages other than the
identified base language using a comparison module (206);
publication of said test reports using a publication module (208);
2. A method as claimed in Claim 1, wherein the internationalization non-functional automation framework is operating system and database independent.
3. A method as claimed in Claim 1, wherein said internationalization non-functional automation framework identifies and captures the base language of said software application from property files of the software application.
4. A method as claimed in Claim 3, wherein the data captured from the property files of said software application is rendered into a structured array.
5. A method as claimed in Claim 4, wherein the data rendered into said structured array is provided a unique identification number.
6. A method as claimed in Claim 1, wherein said validation with texts on user interface takes place during run time of the software application.
7. A method as claimed in Claim 1, wherein said validation with texts on user interface is governed by a control flag to select the desired language option.
8. A method as claimed in Claim 1, wherein the publication of said test reports is performed in an automated manner.
9. A system (200) for automating internationalization testing, said system comprising:
a processor;
a data bus coupled to said processor; and
a computer-usable medium embodying computer code, said computer-usable medium
being coupled to said data bus, said computer program code comprising instructions
executable by said processor and configured for operating:
a language identification module (202) adapted for identifying and validating base
language of a software application;
a validation module (204) adapted for validating languages other than the identified base
language in scope of testing of said software application;
a comparison module (206) adapted for comparing test results and test reports post said
validation of languages other than the identified base language; and
a publication module (208) adapted for publication of said test reports.
| # | Name | Date |
|---|---|---|
| 1 | 201621030763-IntimationOfGrant26-03-2024.pdf | 2024-03-26 |
| 1 | Form 5 [08-09-2016(online)].pdf | 2016-09-08 |
| 2 | 201621030763-PatentCertificate26-03-2024.pdf | 2024-03-26 |
| 2 | Form 3 [08-09-2016(online)].pdf | 2016-09-08 |
| 3 | Form 18 [08-09-2016(online)].pdf_108.pdf | 2016-09-08 |
| 3 | 201621030763-Written submissions and relevant documents [15-03-2024(online)].pdf | 2024-03-15 |
| 4 | Form 18 [08-09-2016(online)].pdf | 2016-09-08 |
| 4 | 201621030763-FORM-26 [27-02-2024(online)].pdf | 2024-02-27 |
| 5 | Drawing [08-09-2016(online)].pdf | 2016-09-08 |
| 5 | 201621030763-Correspondence to notify the Controller [15-02-2024(online)].pdf | 2024-02-15 |
| 6 | Description(Complete) [08-09-2016(online)].pdf | 2016-09-08 |
| 6 | 201621030763-US(14)-HearingNotice-(HearingDate-01-03-2024).pdf | 2024-02-01 |
| 7 | Other Patent Document [16-09-2016(online)].pdf | 2016-09-16 |
| 7 | 201621030763-CLAIMS [18-09-2020(online)].pdf | 2020-09-18 |
| 8 | Other Patent Document [23-09-2016(online)].pdf | 2016-09-23 |
| 8 | 201621030763-COMPLETE SPECIFICATION [18-09-2020(online)].pdf | 2020-09-18 |
| 9 | 201621030763-FER_SER_REPLY [18-09-2020(online)].pdf | 2020-09-18 |
| 9 | Form 26 [26-09-2016(online)].pdf | 2016-09-26 |
| 10 | 201621030763-FER.pdf | 2020-03-19 |
| 10 | 201621030763-POWER OF ATTORNEY-28-09-2016.pdf | 2016-09-28 |
| 11 | 201621030763-Correspondence-220916.pdf | 2018-08-11 |
| 11 | 201621030763-CORRESPONDENCE-28-09-2016.pdf | 2016-09-28 |
| 12 | 201621030763-Form 1-220916.pdf | 2018-08-11 |
| 12 | ABSTRACT1.JPG | 2018-08-11 |
| 13 | 201621030763-Form 1-220916.pdf | 2018-08-11 |
| 13 | ABSTRACT1.JPG | 2018-08-11 |
| 14 | 201621030763-Correspondence-220916.pdf | 2018-08-11 |
| 14 | 201621030763-CORRESPONDENCE-28-09-2016.pdf | 2016-09-28 |
| 15 | 201621030763-FER.pdf | 2020-03-19 |
| 15 | 201621030763-POWER OF ATTORNEY-28-09-2016.pdf | 2016-09-28 |
| 16 | 201621030763-FER_SER_REPLY [18-09-2020(online)].pdf | 2020-09-18 |
| 16 | Form 26 [26-09-2016(online)].pdf | 2016-09-26 |
| 17 | Other Patent Document [23-09-2016(online)].pdf | 2016-09-23 |
| 17 | 201621030763-COMPLETE SPECIFICATION [18-09-2020(online)].pdf | 2020-09-18 |
| 18 | Other Patent Document [16-09-2016(online)].pdf | 2016-09-16 |
| 18 | 201621030763-CLAIMS [18-09-2020(online)].pdf | 2020-09-18 |
| 19 | Description(Complete) [08-09-2016(online)].pdf | 2016-09-08 |
| 19 | 201621030763-US(14)-HearingNotice-(HearingDate-01-03-2024).pdf | 2024-02-01 |
| 20 | Drawing [08-09-2016(online)].pdf | 2016-09-08 |
| 20 | 201621030763-Correspondence to notify the Controller [15-02-2024(online)].pdf | 2024-02-15 |
| 21 | Form 18 [08-09-2016(online)].pdf | 2016-09-08 |
| 21 | 201621030763-FORM-26 [27-02-2024(online)].pdf | 2024-02-27 |
| 22 | Form 18 [08-09-2016(online)].pdf_108.pdf | 2016-09-08 |
| 22 | 201621030763-Written submissions and relevant documents [15-03-2024(online)].pdf | 2024-03-15 |
| 23 | Form 3 [08-09-2016(online)].pdf | 2016-09-08 |
| 23 | 201621030763-PatentCertificate26-03-2024.pdf | 2024-03-26 |
| 24 | Form 5 [08-09-2016(online)].pdf | 2016-09-08 |
| 24 | 201621030763-IntimationOfGrant26-03-2024.pdf | 2024-03-26 |
| 1 | SearchStrategyForApp(2016121030763)E_18-03-2020.pdf |