结合 selenium 测试类和 tkinter

这是我第一次尝试使用 Tkinter 插件,我对我能找到的教程知之甚少。到目前为止,我所看到的所有答案都将一个类放在您构建的 py 文件中,但是我有大量测试,这些测试已经编译到运行许多单独测试的 Test 类中。在尝试添加到 ui 之前,所有测试都会运行并且没有遇到任何错误。


我希望能够通过单击按钮来运行每个套件。我的问题似乎是我错过了一个步骤,但在单击按钮时没有出现任何错误或操作,但在单击并关闭 ui 窗口后出现错误。我应该指出,导入设置文件(包含大部分 webdriver 导入)也无济于事。我犯了同样的错误。


追溯:


Exception in Tkinter callback

Traceback (most recent call last):

File "C:\Python37\lib\tkinter\__init__.py", line 1702, in __call__

return self.func(*args)

File "C:\Python37\lib\unittest\case.py", line 663, in __call__

return self.run(*args, **kwds)

File "C:\Python37\lib\unittest\case.py", line 590, in run

testMethod = getattr(self, self._testMethodName)

AttributeError: 'Test' object has no attribute 'runTest'

我的用户界面代码:


import sys, os, tkinter, TESTadmin

top = tkinter.Tk()

a = TESTadmin.Test()

B = tkinter.Button(top, text= "Test Window", command=a )

B.pack()

top.mainloop()

为清楚起见,我的主要测试文件:


from helpers.settings import *

from pieces import adminLogin, adminLogout, docs



class Test(unittest.TestCase):

def setUp(self):


    # Maximize Window (remove quotes to use)

    '''sel.maximize_window()'''


    self.browser = webdriver.Firefox()

    self.browser.get("https://mywebsite.net")

    # We instantiate and start the browser


def testCases(self):# Add Tests Below

    #log in to admin side

    login = adminLogin.AdminLogin.do(self)

    #docs page

    docpage = docs.Docs.do(self)

    #log out

    logout = adminLogout.Logout.do(self)

    if G.log:

        for k in G.log.items():

            print(k)


### Uncomment to close browser after test ###   

def tearDown(self):

    self.browser.close()


if __name__ == "__main__":

    unittest.main()


RISEBY
浏览 215回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python