检查移动终端界面语言的方法、装置及系统与流程

文档序号:11233994
检查移动终端界面语言的方法、装置及系统与流程

本发明涉及电子信息技术领域,尤其涉及一种检查移动终端界面语言的方法、装置及系统。



背景技术:

移动终端如手机的界面语言因手机使用地区的不同而有所不同,如在中国,手机的界面语言通常为简体中文,在美国,手机的界面语言通常为英文,等等。因此,当在使用A语言的地区的移动终端生产企业要将产品销售到使用B语言或其他语言的地区时,就需要在移动终端的界面使用相应的语言。但是,在设计多国语言界面的过程中,可能会由于翻译人员的笔误、研发人员代码合入错误、或者研发人员代码程序编写错误等原因,导致移动终端显示的界面语言错误,从而由此需要检查移动终端界面语言,以保证界面语言正确。

在某一操作系统下开发的项目也相应有很多界面,如安卓手机项目每种语言的字串约为20000条,如果要开发多国语言的安卓(Android)手机项目,则需要对每种语言的20000条左右的字串进行检查。

目前,移动终端界面语言的检查方法有两种,一种是操作系统自带的编译环境,另外一种是测试人员手工检查。其中,操作系统自带的编译环境如安卓自带的编译环境可以检查字串源文件的结构和语法,是否符合基本的编译规则和xml语法规范。手工检查时,在测试的工程样机上,测试人员需手动切换到指定的被测试语言,并遍历所有的界面,人工检查是否存在字符显示相关的异常。

在实现本发明的过程中,发明人发现现有技术中至少存在如下技术问题:

测试人员须对手机所有界面进行手工遍历测试,人工检查每一种语言的字串错误,例如乱码,停止运行等,导致检查成本增加,而且容易漏测。而操作系统如安卓自带的编译环境无法检查出翻译语言文本自身的错误,例如错误的转义符号,错误的格式化符号等,这类错误会被机器认为是正确的。因此,上述两种方法都导致移动终端界面语言的检查效率低下。



技术实现要素:

本发明提供的检查移动终端界面语言的方法、装置及系统,能够提升移动终端界面语言的检查效率。

第一方面,本发明提供一种查移动终端界面语言的方法,由电子设备执行,包括:

接收语言检查请求,其中,所述语言检查请求中包含有待检查项目的信息,所述待检查项目为基于所述移动终端操作平台开发的项目;

根据所述语言检查请求中的待检查项目的信息,获取所述待检查项目的源代码;

识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,其中,所述预设的错误类型包括格式错误和代码错误中的至少一种。

可选地,所述根据所述语言检查请求中的待检查项目的信息,获取所述待检查项目的源代码,包括:

根据所述待检查项目的源代码路径信息,获取所述待检查项目的源代码。

可选地,所述识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,包括:

从所述待检查项目的源代码中筛选出有对应简体中文的字串;

识别出所述有对应简体中文的字串中与所述预设的错误类型相匹配的字 串。

可选地,所述识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,包括:

识别出所述待检查项目的源代码中与以下至少一种错误类型相匹配的字串:条目为空、数组中出现重复值、有错误的格式化符号、有冗余的英文文字、有冗余的标点符号、有错误的转义符号、有与所述待检查项目的语言非同语系的文字、以及存在大写有误的字母。

可选地,所述识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串之后,所述方法还包括:

保存所述待检查项目的源代码中与预设的错误类型相匹配的字串,或者返回所述待检查项目的源代码中与预设的错误类型相匹配的字串。

第二方面,本发明提供一种检查移动终端界面语言的装置,设置于电子设备中,包括:

请求接收单元,用于接收语言检查请求,其中,所述语言检查请求中包含有待检查项目的信息,所述待检查项目为基于所述移动终端操作平台开发的项目;

代码获取单元,用于根据所述语言检查请求中的待检查项目的信息,获取所述待检查项目的源代码;

识别单元,用于识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,其中,所述预设的错误类型包括格式错误和代码错误中的至少一种。

可选地,所述代码获取单元用于:

根据所述待检查项目的源代码路径信息,获取所述待检查项目的源代码。

可选地,所述识别单元用于:

从所述待检查项目的源代码中筛选出有对应简体中文的字串;

识别出所述有对应简体中文的字串中与所述预设的错误类型相匹配的字串。

可选地,所述识别单元用于:

识别出所述待检查项目的源代码中与以下至少一种错误类型相匹配的字串:条目为空、数组中出现重复值、有错误的格式化符号、有冗余的英文文字、有冗余的标点符号、有错误的转义符号、有与所述待检查项目的语言非同语系的文字、以及存在大写有误的字母。

可选地,所述装置还包括:

结果处理单元,用于在所述识别单元识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串之后,保存所述待检查项目的源代码中与预设的错误类型相匹配的字串,或者返回所述待检查项目的源代码中与预设的错误类型相匹配的字串。

第三方面,本发明提供一种检查移动终端界面语言的系统,所述系统包括上述检查移动终端界面语言的装置。

本发明实施例提供的检查移动终端界面语言的方法、装置及系统,接收语言检查请求,其中,所述语言检查请求中包含有待检查项目的信息,所述待检查项目为基于所述移动终端操作平台开发的项目;根据所述语言检查请求中的待检查项目的信息,获取所述待检查项目的源代码;识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,其中,所述预设的错误类型包括格式错误和代码错误中的至少一种。与现有技术相比,通过识别出有格式错误或代码错误的字串,检查出了语言本身的错误,而非翻译的错误,降低了语言检查的失误率,也即提高了移动终端的界面语言的检查效率。

附图说明

图1为本发明一实施例提供的检查移动终端界面语言的方法的流程图;

图2为本发明另一实施例提供的检查移动终端界面语言的方法的流程图;

图3为本发明一实施例提供的检查移动终端界面语言的装置的结构示意图;

图4为本发明一实施例提供的检查移动终端界面语言的系统的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供的检查移动终端界面语言的方法可由计算机和服务器等具有信息和数据处理功能的电子设备执行。

本发明一实施例提供的检查移动终端界面语言的方法如图1所示,包括:

S11、接收语言检查请求,其中,所述语言检查请求中包含有待检查项目的信息,所述待检查项目为基于所述移动终端操作平台开发的项目。

例如,测试人员要检查安卓(Android)项目中的天气预报的所有界面语言,可通过上述电子设备的人机交互操作部件如键盘、鼠标等发起语言检查请求,以指示该电子设备执行检查天气预报所有界面语言的操作;或者,可在网络(web)浏览器的界面进行操作,通过网络向上述电子设备发起语言检查请求,以使该电子设备执行检查天气预报所有界面语言的操作。相应地,上述电子设备接收来自人机交互操作部件或者来自网络侧的语言检查请求。上述请求中,测试人员需要给出天气预报的信息如源代码的路径或者源代码本身。

这里,源代码可以是可扩展标记语言(Extensible Markup Language,XML)文件。

S12、根据所述语言检查请求中的待检查项目的信息,获取所述待检查项目的源代码。

当所述语言检查请求中给出了待检查项目的源代码路径信息时,本步骤可包括:

根据所述待检查项目的源代码路径信息,获取所述待检查项目的源代码。

例如所述语言检查请求中给出了待检查项目的网盘存储链接地址,则上述电子设备可从网盘存储链接地址得到待检查项目的源代码。

或者,语言检查请求中也可以给出待检查项目的源代码,上述电子设备可直接获取到待检查项目的源代码。

S13、识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,其中,所述预设的错误类型包括格式错误和代码错误中的至少一种。

本步骤检查的是语言文本自身的错误,例如,错误的转义符号,错误的格式化符号等等。

示例性的,所述识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,可包括:识别出所述待检查项目的源代码中与以下至少一种错误类型相匹配的字串:条目为空、数组中出现重复值、有错误的格式化符号、有冗余的英文文字、有冗余的标点符号、有错误的转义符号、有与所述待检查项目的语言非同语系的文字、以及存在大写有误的字母。

其中,当源代码中的某一字串条目为空时,如果手机界面语言非英语,则具有该字串条目的手机界面表现为显示英文字串;如果手机界面语言为英语,则手机切换到带有该字串条目的手机界面时,手机会崩溃。

当某字串数组中出现重复值,其在手机界面通常表现为在同一个listView控件中出现重复值。例如:在安卓系统缅甸语环境下,浏览器→设置→辅助功能→字体大小菜单下,“小"和“超小”两个选项,在缅甸语设定下是重复的。这两个词条对应到源代码中,是在同一个字串数组中紧挨着的两个相同的字串数据,而在缅甸语中这样的表述是错误的,需要纠正。

当源代码中的某一字串条目中有错误的格式化符号时,其在手机界面表现为程序崩溃。

当源代码中的某一字串条目中有冗余的英文文字时,其在手机界面表现为某语言的句子中夹杂了不应出现的英文。

当源代码中的某一字串条目中有冗余的标点符号时,其在手机界面表现为对应的句子中夹杂了多余的标点符号。所述对应的句子使用的语言为待检查项目所用的语言。

当源代码中的某一字串条目中有错误的转义符号时,其在手机界面表现为句子中夹杂乱码,例如豪萨语中出现“<Ba a saita ba>”

当源代码中的某一字串条目中有与所述待检查项目的语言非同语系的文字时,如在某一语系的手机界面的源代码中出现其他语系的文字,例如在阿拉伯文字(如阿拉伯语、波斯语)中出现西里尔文字(如俄语、乌克兰语),相应地,手机界面中也会出现不同语系的语言文字。

当源代码中的某一字串条目中存在大写有误的字母时,如译文词条全为大写字母的文字,但原始英文中并非全大写。以斯瓦西里语为例,假如字串条目中出现“UPIGAJI IP”,则“UPIGAJI”属于大写有误的字母。因为“UPIGAJI”是拨号的意思,此时不应该用大写,而应该用小写。

当安卓项目所用语言出现上述错误时,都可以通过本发明实施例提供的方 法检查出来。

进一步地,如果语言检查请求中还给出了与所检查语言如A语言相对应的英文源代码时,本发明实施例提供的检查移动终端界面语言的方法还可进一步将源代码中的A语言字串与对应的英文字串相比对,如果A语言某一字串中有数字,而A语言该字串对应的英文字串中无数字;或者,A语言该字串中无数字,而对应的英文字串中有数字,则认为A语言出现了错误。

当语言检查请求中还给出了与所检查语言如A语言相对应的英文源代码时,本发明实施例提供的检查移动终端界面语言的方法还可进一步将源代码中的A语言字串与对应的英文字串相比对,如果A语言某一字串的长度明显大于或小于该字串对应的英文字串长度,则认为A语言出现了错误,例如,英文字串中字符超过100个,而A语言该字串中仅有三五个字。

本发明实施例提供的检查移动终端界面语言的方法由电子设备执行,接收语言检查请求,其中,所述语言检查请求中包含有待检查项目的信息,所述待检查项目为基于所述移动终端操作平台开发的项目;根据所述语言检查请求中的待检查项目的信息,获取所述待检查项目的源代码;识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,其中,所述预设的错误类型包括格式错误和代码错误中的至少一种。与现有技术相比,通过识别出有格式错误或代码错误的字串,检查出了语言本身的错误,而非翻译的错误,降低了语言检查的失误率,也即提高了移动终端的界面语言的检查效率。并且,通过电子设备执行语言检查方法进一步提高了语言检查效率,节约了测试语言的成本。

本发明另一实施例提供的检查移动终端界面语言的方法如图2所示,包括:

S21、源代码提取、解压缩和文件夹筛选。

例如上述电子设备根据测试人员提供的路径,找到并取出源代码,如果源 代码为压缩包的还要进行解压缩。另外,由于每一安卓项目的源代码不仅有用于界面设计的,还包括其他如后台数据处理部分的源代码,因此,可能一个待检查项目有多个文件夹用来放置源代码,这里就需要找出放置与界面设计相关的源代码的文件夹,也即筛选出与语言检查相关的文件夹。

S22、字串提取。

例如上述电子设备从筛选出的文件夹中打开某一源文件,提取出其中的字串,以检查移动终端界面显示的语言中存在的错误。

S23、字串筛选。

这里可以仅筛选有对应简体中文的字串。这里针对的是文化氛围是中文或者地理位置为华语地区的企业开发的用于其他国家的安卓项目,且在手机项目源代码库中,会存在一些不需要翻译成其他语言的模块,即非用于界面显示的部分,例如工程模式。如果测试所有英文词条对应的字串,则输出结果会多出很多无需检查的字串而被检查出错误的结果,导致检查失误。如果仅检查有对应简体中文的英文词条对应的字串,则不仅会进一步提高检查效率,还可进一步提高检查的准确度。

S24、字串分析。

这里,可以依次对筛选出的每个字串做分析,分析是否属于上述错误类型。

S25、将分析结果存入数据库。

将检查出的有上述错误的字串存入数据库,以等待被其他程序读取显示。

S26、将分析结果在网络(web)前端展示。

例如,终端中安装的浏览器通过上述电子设备提供的web服务,读取数据库中保存的分析结果。

本发明实施例提供的检查移动终端界面语言的装置设置于上述电子设备 中。

本发明一实施例提供的检查移动终端界面语言的装置如图3所示,包括:

请求接收单元31,用于接收语言检查请求,其中,所述语言检查请求中包含有待检查项目的信息,所述待检查项目为基于所述移动终端操作平台开发的项目;

代码获取单元32,用于根据所述语言检查请求中的待检查项目的信息,获取所述待检查项目的源代码;

识别单元33,用于识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,其中,所述预设的错误类型包括格式错误和代码错误中的至少一种。

本发明实施例提供的检查移动终端界面语言的装置设置于电子设备中,通过请求接收单元接收语言检查请求,其中,所述语言检查请求中包含有待检查项目的信息,所述待检查项目为基于所述移动终端操作平台开发的项目;通过代码获取单元根据所述语言检查请求中的待检查项目的信息,获取所述待检查项目的源代码;通过识别单元识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串,其中,所述预设的错误类型包括格式错误和代码错误中的至少一种。与现有技术相比,通过识别出有格式错误或代码错误的字串,检查出了语言本身的错误,而非翻译的错误,降低了语言检查的失误率,也即提高了移动终端的界面语言的检查效率。并且,通过电子设备执行语言检查方法进一步提高了语言检查效率,节约了测试语言的成本。

可选地,所述代码获取单元32用于:

根据所述待检查项目的源代码路径信息,获取所述待检查项目的源代码。

可选地,所述识别单元33用于:

从所述待检查项目的源代码中筛选出有对应简体中文的字串;

识别出所述有对应简体中文的字串中与所述预设的错误类型相匹配的字串。

可选地,所述识别单元33用于:

识别出所述待检查项目的源代码中与以下至少一种错误类型相匹配的字串:条目为空、数组中出现重复值、有错误的格式化符号、有冗余的英文文字、有冗余的标点符号、有错误的转义符号、有与所述待检查项目的语言非同语系的文字、以及存在大写有误的字母。

可选地,所述装置还可包括:

结果处理单元,用于在所述识别单元识别出所述待检查项目的源代码中与预设的错误类型相匹配的字串之后,保存所述待检查项目的源代码中与预设的错误类型相匹配的字串,或者返回所述待检查项目的源代码中与预设的错误类型相匹配的字串。

本发明实施例提供的检查移动终端界面语言的系统包括上述检查移动终端界面语言的装置。

本发明一实施例提供的检查移动终端界面语言的系统如图4所示,包括源代码服务器41、分析服务器42和显示终端43。

本实施例中,检查移动终端界面语言的装置设置于分析服务器42中。

源代码服务器41用于存放上述待检查项目的源代码。分析服务器42用于自动抓取源代码服务器中与多国语言文本有关的xml文件,将抓取来的xml文件进行分析,并提供web显示服务。上述图2所示方法可由分析服务器42执行。显示终端43可为任意具有web网页浏览器的终端,分析服务器42得出的分析结果在显示终端43的浏览器中呈现。

本发明实施例提供的检查移动终端界面语言的方法、装置及系统,应用到安卓手机时,可以对整个手机的所有人机交互界面,如音乐,视频,浏览器,通话界面等所有应用(app)界面,又如系统提示信息、通信状态提示等框架层(framework)显示的界面。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1