Automated Multilingual Software Testing via Dynamic Resource Bundle Discovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current automated testing methods for multilingual software applications require manual translation and duplication of resource files, are costly, and fail to dynamically discover locale-specific resources, leading to inefficiencies and inaccuracies.
Innovation Solution
A system and method that determines and accesses pre-existing resource files within the software application to provide translations for testing, eliminating the need for manual translation and ensuring accurate matching with the application under test, while dynamically discovering necessary resource files based on the application's locale.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual translation and duplication of resource files is used for each language, then translations can be provided for testing, but translation costs and maintenance efforts increase significantly
Solution Approach 1:
The patent uses the application's own resource bundle files as the source of translations for test commands. Instead of manually creating separate translation files for testing, the system copies/uses the existing resource bundles that the application already employs for its user interface. This ensures translation accuracy matches the application while eliminating duplicate translation work.
Solution Approach 2:
The patent makes the application's resource bundle files serve dual purposes: both for the application's user interface localization and for translating test commands. By making these files universally usable for both purposes, the system eliminates the need for separate translation processes while ensuring consistency between the application and test translations.
2Adaptability or versatility
If separate resource bundle files are created for each localized language, then translations are available, but synchronization with the application becomes prohibitively expensive and complex
Solution Approach 1:
The patent merges the translation source for both the application and the test tool into a single set of resource bundle files. Instead of maintaining separate translation files for the application and for testing, the system combines both uses into the same resource bundle infrastructure, so that one set of files serves both purposes simultaneously.
Solution Approach 2:
The system allows the application's own resource bundle files to automatically serve the test tool's translation needs. The resource bundles are self-sufficient and can be directly utilized by the test automation framework without requiring separate translation maintenance, enabling the system to service its own translation requirements.
3Loss of information
If ResourceBundles are manually set up in the test tool, then translations are accessible, but dynamic discovery of locale-specific resources is not possible
Solution Approach 1:
The patent implements a mechanism where the test tool dynamically queries the application to discover which resource bundle files and locales are available. This feedback loop allows the test system to automatically detect the application's locale configuration and adapt accordingly, eliminating manual configuration while ensuring the correct translations are used.
Solution Approach 2:
The system transitions from static, manually configured resource bundle paths to dynamic discovery. The test tool automatically determines the application's locale and locates the appropriate resource bundle files at runtime, allowing the system to adapt to different language configurations without requiring pre-configuration or manual setup.
4Adaptability or versatility
If the test tool uses a different default locale than the application, then the application can run on various OS systems, but translation mismatches occur
Solution Approach 1:
Instead of having the test tool impose its own default locale settings on the application, the patent inverts the approach by having the test tool query the application to determine what locale the application is actually using. This ensures the test translations match the application's locale regardless of the OS or test tool's default settings.
Solution Approach 2:
The system dynamically adjusts the locale parameter based on the application's actual configuration rather than using a fixed default. By changing the locale parameter to match the application's setting (determined through dynamic discovery), the system ensures translation accuracy while maintaining OS compatibility.
Data Source
AI summary
A computer system and method tests various language installations of an application program using a single test script. The various language translations existing with the application program are used to provide translations of test command strings from one language to the specific language of the application program (operating system locale for executing the program). The test script may then be translated at runtime using the predefined program-established translations to allow the testing program to test the application program in accordance with the language of the application program/operating system locale.


