【发布时间】:2012-10-05 03:12:13
【问题描述】:
这是我的测试类,我正在尝试对我的方法 createaccount() 进行单元测试
class CreateAccountTest1(unittest.TestCase):
def testCreateAccount_1(self,data):
text = "{'user_id':'abc123','action':'add','names':['hello','world']}"
regex = !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(text.replace(/"(\\.| [^"\\])*"/ g, ''))) && eval('(' + text + ')')
self.assertRegexpMatches(text, reg, 'my msg')
createaccount() 方法是
class CreateAccountClass():
def CreateAccount(self,data):
现在我要检查createaccount()的参数是否是json格式。
如果我通过data=
{ "_id" : "user@gmail.com", "H_id" : "smsg0", "name" : "vish", "passwrd" : "xj45cd" }
它应该检查它是否是json,
我确信这是 json 格式。
现在在我的方法createaccount() 中,它应该检查data 是否为json 格式,
如果不是,它应该打印错误消息,如果它与 regex 一起使用?或任何建议,
谢谢,
【问题讨论】:
-
您可以尝试解析json,如果它无效则捕获异常。
-
@RudolfMühlbauer:如果它们是答案而不是 cmets,请添加 cmets 作为答案。
-
@AlexReynolds 在我看来,鲁道夫的建议是先尝试而不是解决方案......
-
@AlexReynolds,你是对的。但是,根据我的心情,我在 SO 中错过了很多 RTFM / WhatHaveYouTried。所以我用 cmets 来给出提示,而不是贴 4 行代码,很容易在网上找到,一本书,一个教程,...
-
问题是,当这样的问题发布时,有 10 个人启动 google 或 python shell 来测试他们的答案。与 OP 自己尝试解决问题相比,这会消耗更多时间并且对 OP 具有学习效果。
标签: python regex json unit-testing