51Testing软件测试论坛

标题: 询问Monkeyrunner的中文支持问题 [打印本页]

作者: smokyfish    时间: 2015-8-18 18:11
标题: 询问Monkeyrunner的中文支持问题
用Monkeyrunner执行py文件, 有一语句
print u'我是中文'

这时报错:
UnicodeEncodeError: 'charmap' codec can't encode character u'\u6211' in position 0: character maps to <undefined>

我有在文件头加入'utf-8',也有重新加载sys的encoding,还是报这个错误,不知道是为什么
作者: jingzizx    时间: 2015-8-19 09:29
他的意思是无法打印这个字符,不支持这个字符显示
删除这个语句应该没问题,或者打印时转码试试
作者: smokyfish    时间: 2015-8-19 13:51
是的,确实是编码问题.

我的目的是为了让monkeyrunner调用一个activity去获取一个id/category_text, 从HierarchyViewer里看,在这层目录的所有Textview的ID都是 id/category_text。直接用MonkeyEasyDevice.touch(BY.id('id/category_text'),'downAndUp'))是无效的。而这些Textview又全是中文显示, 想在脚本中指定点击某个中文的Textview时,monkeyrunner就报LookupError: unknown encoding 'ms936'错误, 故不能在代码中直接写中文

为了解决这个问题就在dos命令窗口中执行了 chcp 437,将之转变为美国英语, 再输出 print u'我是中文'就报UnicodeEncodeError: 'charmap' codec can't encode character u'\u6211' in position 0: character maps to <undefined>

请问大大们,在处理类似这样的问题时是如何解决的?

作者: smokyfish    时间: 2015-8-19 13:52
jingzizx 发表于 2015-8-19 09:29
他的意思是无法打印这个字符,不支持这个字符显示
删除这个语句应该没问题,或者打印时转码试试

当前dos窗口的默认执行页为437,这时再转码成unicode, 就报以上错误
作者: smokyfish    时间: 2015-8-19 13:53
为啥回复也要审核?......
作者: lsekfe    时间: 2015-8-19 16:25
smokyfish 发表于 2015-8-19 13:53
为啥回复也要审核?......

你好 这个可能涉及到了关键字所以才会进入后台进行审核
作者: cuikejie123    时间: 2016-5-26 15:43
太高深了 ,不懂  
作者: SunnyLan    时间: 2016-5-28 11:41

作者: 757099069    时间: 2016-5-29 15:56
有人知道怎么在输入框输入中文吗。  我加了#coding=utf-8 或者#coding=gbk  ;  device.type("中文")  行不通




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2