indeyo
(小玲儿)
1
问 题
-
为什么 setup_class
需要定义成 classmethod
?
个人理解,设置成类方法为了通过类而不是实例化对象调用,可以稍微节省一点代码。
而setup_class
本身是一个初始化的方法,本身不显示调用,那么设置成类方法的作用是?
-
在代码重构过程中,什么情况下需要用classmethod?
class TestWeWork:
# 这里什么要用类方法?
@classmethod
def setup_class(cls):
cls.token = WeWork.get_token()
def test_get_token(self):
r = WeWork.get_access_token(WeWork.secret)
assert r["errcode"] == 0
def test_get_token_exist(self):
assert self.token is not None
实例代码
https://github.com/seveniruby/HogwartsSDET11
额。。。没发现你是另外发了一个帖子,我给回复到答疑帖下面了。。你上答疑帖看吧
indeyo
(小玲儿)
3
在答疑帖是引用了这个帖子啦,下次可以在这里回复。。然后在答疑帖引用你的回复,也可以不引用,反正别人一点进来,就可以看到你的回复了
这样做的好处就是可以把这个问题单独拎出来,别人搜帖子也容易发现
indeyo
(小玲儿)
7
MR DONG可以针对第二个问题回答下不,最近在学习重构代码,什么时候用classmethod还是有点懵
有利于组织代码和命名空间的整洁,懵是因为你写的代码太少了,没遇到过使用场景。