单元测试删除方法

时间:2021-02-03 22:35:58

标签: python unit-testing flask-sqlalchemy

我不确定如何进行单元测试删除方法。下面是我要测试的内容。

@app.route('/questions/<id>', methods=['DELETE'])
def delete(id):
   question = Question.query.filter_by(id = id).first()
   if not question:
       abort(422)
   try:
      db.session.delete(question)
      db.session.commit()
   except:
      db.session.rollback()
   finally:
      db.session.close()
      return jsonify({
      'success': True
      })

我不知道如何测试,因为路由需要一个 ID,但如果我执行以下操作,我想它只会工作一次,因为它会在第一次测试中删除 id 5,但之后测试将尝试删除一个没有的 ID不再存在于数据库中。

def test_Delete(self):
    
    res = self.client().delete('/questions/47')
    data = json.loads(res.data)

    self.assertEqual(res.status_code, 200)
    self.assertEqual(data['success'],True)

0 个答案:

没有答案
相关问题