【发布时间】:2013-05-08 08:19:28
【问题描述】:
我已经被这个错误困扰了几个小时了。不知道出了什么问题。下面是一段代码
NameError:未定义全局名称“GetText”
class BaseScreen(object):
def GetTextFromScreen(self, x, y, a, b, noofrows = 0):
count = 0
message = ""
while (count < noofrows):
line = Region(self.screen.x + x, self.screen.y + y + (count * 20), a, b)
message = message + "\n" + line.text()
count += 1
return message
class HomeScreen(BaseScreen):
def GetSearchResults(self):
if self.screen.exists("Noitemsfound.png"):
return 'No Items Found'
else:
return self.GetTextFromScreen(36, 274, 680, 20, 16)
class HomeTests(unittest.TestCase):
def test_001S(self):
Home = HomeScreen()
Home.ResetSearchCriteria()
Home.Search("0009", "Key")
self.assertTrue("0009" in Home.GetSearchResults(), "Key was not returned")
Basescreen 类具有适用于不同屏幕的所有可重用方法。Homescreen 继承 Basescreen。
在HomeTests 测试用例类中,最后一步是Home.GetSearchResults(),它依次调用基类方法和错误。
注意:
我有另一个 screenclass 和 testcaseclass 做同样的事情,没有问题。
我已经检查了所有的导入语句并且没问题
错误消息中的“GetText”是最初的方法名称,之后我将其更改为GetTextFromScreen
错误消息仍然指向代码中的第 88 行,该行不再存在。模块导入/重新加载问题?
【问题讨论】:
-
“错误消息仍然指向代码中的第 88 行,但不再存在。模块导入/重新加载问题?”是的。点/显示将显示当前文件,即使您尚未运行它。您必须重新加载/重新导入才能获取新文件。
-
谢谢。我只用了大约一周的python。它现在工作。您能否告诉我为什么会发生这种情况以及将来如何避免这种情况。?非常感谢
-
我的脚本开头有 import 语句。我希望每次运行脚本时都会导入它。不知道重新加载。谢谢。
-
如果我的回答帮助您理解了问题,请随时投票或选择带有复选标记的答案。谢谢!
标签: python