1

这是我的测试类,我正在尝试对我的方法进行单元测试,即 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?或任何建议,谢谢,

4

2 回答 2

8
import json
try:
  json.loads(data)
except ValueError:
  print("data was not valid JSON")
于 2012-10-15T07:02:20.443 回答
1

看看这个答案。另外,我建议不要使用正则表达式执行此检查,只需使用标准解析器并使用json.load检查错误

于 2012-10-15T07:05:41.800 回答