【问题标题】:Selenium Python "Name Error" I am definitely missing something obviousSelenium Python“名称错误”我肯定遗漏了一些明显的东西
【发布时间】:2014-06-07 10:10:12
【问题描述】:

我是编写自动化测试的新手,我觉得我肯定遗漏了一些非常明显的东西

这是我的代码。

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 运行它

【问题讨论】:

    标签: python selenium saucelabs


    【解决方案1】:

    您的代码混合了制表符和空格,它没有像您想象的那样被视为缩进。

    只需设置您的编辑器以完全避免制表符(体面的编辑器可以这样做,并且仍然使用制表键进行缩进)。

    【讨论】:

    • 谢谢!我使用 sublime text 2,将缩进转换为制表符似乎解决了这个问题。
    猜你喜欢
    • 2019-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-12
    • 2011-05-14
    • 1970-01-01
    • 1970-01-01
    • 2011-12-28
    相关资源
    最近更新 更多