Selenium Python “名称错误” 我肯定遗漏了什么明显的东西
我刚开始写自动化测试,感觉自己一定漏掉了什么很明显的东西。
这是我的代码。
Class BIIAccountPreferencesTest(CoreTest):
def testAccountPreferences(self):
lp = BIILoginPage(self.driver)
hp = lp.biiLoginUser(config.biisubscriber_username , config.biisubscriber_password)
d = self.driver
print "\n Changing user and company name"
d.get(config.bii_url + '/account')
d.find_element_by_css_selector('#user-fullname').clear()
d.find_element_by_css_selector('#user-company').clear()
d.find_element_by_css_selector('#user-fullname').send_keys(random.choice(string.ascii_uppercase) for x in range(7))
d.find_element_by_css_selector('#user-company').send_keys(random.choice(string.ascii_uppercase) for x in range (5))
d.find_element_by_css_selector('#user-Save').click()
a = d.find_element_by_css_selector('body > div.container.clearfix > p').text
b = "Your account information has been updated"
self.assertTrue(str(b) in str(a))
当我运行这段代码时,总是出现这个错误:“NameError: name 'd' is not defined”,我是不是在不对的时机声明 d = self.driver?我用 self.driver 是因为我是在通过 saucelabs 运行这个测试。
1 个回答
2
你的代码里混用了制表符和空格,这样的缩进方式并不是你想的那样。
只要把你的编辑器设置成完全不使用制表符(好的编辑器可以做到这一点,同时还可以用Tab键来缩进)。