早上在写代码,开始学习自动化测试的一些东西,自信满满地开始,结果一点击运行就报错:
Traceback (most recent call last):
File "D:\AutoTest Study\Eclipse_workspace\pytest1\src\com\carol\testCalc.py", line 15, in testName
driver.implicitly_wait(10)
TypeError: unbound method implicitly_wait() must be called with WebDriver instance as first argument (got int instance instead)
----------------------------------------------------------------------
可是去代码中查看这一行跟其他的脚本里的没区别啊,语法完全一样的,百度一看也没有看到类似的问题。只能自己一行一行看,看完第一遍再看第二遍,果然发现了问题所在。driver = Firefox这行代码少了括号,立马加上括号点运行,果然成功。一个小括号带来的问题。以后一定要谨记这个错误,不要再犯。
# -*- coding=UTF-8 -*-
'''
Created on Nov 18, 2018
@author: Administrator
'''
import unittest
from selenium.webdriver.firefox.webdriver import WebDriver as Firefox
class Test(unittest.TestCase):
def testName(self):
driver = Firefox #改成:driver = Firefox()
driver.implicitly_wait(10)
driver.set_page_load_timeout(30)
driver.maximize_window()
driver.get("http://localhost/webtest/calc.htm")
driver.find_element_by_id("btn1").click()
driver.find_element_by_id("plus").click()
driver.find_element_by_id("btn2").click()
driver.find_element_by_id("equal").click()
second = driver.find_element_by_name("numScreen").get_attribute("value")
driver.close()
driver.quit()
self.assertEqual("3", second)
if __name__ == "__main__":
#import sys;sys.argv = ['', 'Test.testName']
unittest.main()