这是我的带有按钮的表单代码:
import sys
from ClickerBot import test_ClikerBot
def func1():
if sys.version_info < (3, 0):
# Python 2
import Tkinter as tk
else:
# Python 3
import tkinter as tk
root = tk.Tk()
root.title(“Clicker”)
def startClick():
root.destroy()
clicker = test_ClikerBot()
clicker.test_clicker_bot()
button1 = tk.Button(root, text=“CLICK CLICK CLICK”, command=startClick())
button1.pack()
tk.mainloop()
if __name__ == ‘__main__‘:
func1()
当我启动此文件时,我收到下一个错误:
/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 /Users/ltst/Desktop/dev/DribbleBot/venv/Scripts/main.py
Traceback (most recent call last):
File “/Users/ltst/Desktop/dev/DribbleBot/venv/Scripts/main.py”, line 23, in <module>
func1()
File “/Users/ltst/Desktop/dev/DribbleBot/venv/Scripts/main.py”, line 19, in func1
button1 = tk.Button(root, text=“CLICK CLICK CLICK”, command=startClick())
File “/Users/ltst/Desktop/dev/DribbleBot/venv/Scripts/main.py”, line 16, in startClick
clicker = test_ClikerBot()
File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/case.py”, line 191, in __init__
(self.__class__, methodName))
ValueError: no such test method in <class ‘ClickerBot.test_ClikerBot’>: runTest
但是在我的ClickerBot类中存在这个方法:
class test_ClikerBot(unittest.TestCase):
def test_clicker_bot(self):
哪里有问题?我从catalog studio记录器导入这个代码,并在一周前开始学习python,因为很多东西对我来说像魔法和谷歌帮助不是每次都有(对不起英语不好)
答案 0 :(得分:0)
如果您的test_ClikerBot
课程是普通课程,您的代码就可以了。关键是unittest
是一个非常特殊的框架,并且TestCase
类不是直接使用的,而是通过TestRunner
和TestLoader
两者都做了很多引擎盖下的魔法。 This is partly documented,但您可能必须阅读现有跑步者和装载者的源代码才能真正了解如何使整个过程发挥作用。一个很好的起点可能是文档中提到的已经存在的GUI testrunner:
Python源代码中的脚本Tools / unittestgui / unittestgui.py distribution是一个用于测试发现和执行的GUI工具