测试python代码的正确值

时间:2014-04-14 00:41:31

标签: python unit-testing

我编写了一些python代码,它已经用正确的结果更新了数据库。我想使用一些模拟数据,并能够测试此代码的每一行和边。我已经在课堂上学习了一些用于测试java的概念,但是我不知道如何为python做这些,并且没有真正掌握编写好测试的概念。我已经为我要测试的东西添加了我的代码。如果有人请解释我如何测试这个代码将是伟大的。我自己添加了一些测试代码,但我不知道它是对还是错。我已经在线研究过帮助我,但是大部分文档都是关于非常简单的函数,而不是类似于我的代码,所以不太确定应该如何完成。

我的代码:

import sys
import os
sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), os.pardir))
import mySqlConnector

database = mySqlConnector.mySqlConnector(1, 2014)

result = database.getUserPicksWithSeed()

updatedUsers = dict()

for row in result: 
  id = row["userID"]
  if id not in updatedUsers:
    updatedUsers[id] = 0

  seed1 = row["seed1"]
  seed2 = row["seed2"]

  if seed1 > seed2:
      pointField = seed1 - seed2
  else:
      pointField = seed2 - seed1

  if pointField < 5: 
      pointField = pointField * 0.75

  upsetHappened = row["upsetHappened"]

  if not (upsetHappened == 1):
      pointField = pointField / (-3)

  updatedUsers[id] += pointField

for key, value in updatedUsers.items(): 
      database.updateUserScoreById(key, value)

测试代码(到目前为止):

import os.path, sys
sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), os.pardir))
import mySqlConnector
import pytest

database = mySqlConnector.mySqlConnector(1, 2014)



users = {
  'USERID' : 1,
  'USERID2' : 2,
  'USERID3' : 3
  }

seeds = {
  'seed1_1' : 1,
  'seed1_2' : 8,
  'seed1_3' : 7,
  'seed2_1' : 16,
  'seed2_2' : 9,
  'seed3_2' : 4
}

0 个答案:

没有答案