Python判断Unicode字符串类型

发表于:2016-1-28 08:21

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:搜狗测试.王玉    来源:51Testing软件测试网原创

  问题引出:
  入口自动化脚本执行过程中,发现输入法的英文补全模块最近一直是失败的。(输入法正常候选长成这个样子:
   
  还有这个样子:
   ->点击更多英文补全或者快捷键"分号+E",进入英文补全模式后是这个样子:  
 
  问题分析:
  检查脚本的步骤,判断是否正常进入英文补全模式,是通过上屏二选,判断上屏的文字与预期的文字是否一致。由于正常模式下,英文候选要么在首位,要么在五选,如果未能正常进入英文补全模式的话,上屏的二选必然是汉字,因此通过二选来判断还是很靠谱的~但是通过对比上屏的字符和预期的是否一致是否靠谱呢?
  脚本运行相当一段时间内,其几乎没有失败过,但是最近却一直失败。尝试手动操作,发现完全可以正常进入英文补全模式,那是哪里出错了呢?对比上屏的文字和预期结果的文字,发现候选的词序一旦发生变化,上屏的字符串和预期结果就不一样,脚本就会执行失败。
  既然正常模式和英文补全模式的区别是候选中是否全部都是英文,那是否可以通过判断上屏的字符是否是英文来判断呢??
  解决方法:
  定义一个函数,判断上屏的字符是否是英文字母,通过转码和编码区间来判断:
  def is_alphabet(uchar): """判断一个unicode是否是英文字母"""if (uchar >= u'\u0041' and uchar<=u'\u005a') or (uchar >= u'\u0061' and uchar<=u'\u007a'):return True else: return False
  …….
  txt = ImeCommon.GetEditHandle()
  print 'txt = ',txt
  flag = is_alphabet (txt)
    ... ...
   查看全文内容,请点击下载:http://www.51testing.com/html/65/n-3704165.html

版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号