Django学习日记4

1.Vue.js指令
解析:
[1]HTML属性中的值应使用v-bind指令。
[2]v-html指令用于输出HTML代码。
[3]指令是带有v-前缀的特殊属性,比如v-if。
[4]v-on指令用于监听DOM事件。
[5]v-show指令根据条件展示元素。
[6]v-model指令在表单控件元素上创建双向数据绑定。

2.import Vue from 'vue'
解析:import Vue from "../node_modules/vue/dist/vue.js"

3.el:'#app'
解析:将所有视图放在id值为app这个dom元素中。

4.<router-view></router-view>
解析:在页面中放入一个路由视图容器。

5.Python单元测试框架unittest
解析:
在这里插入图片描述

  • 一个TestCase的实例就是一个测试用例。什么是测试用例呢?就是一个完整的测试流程,包括测试前准备环境的搭建[setUp],执行测试代码[run],以及测试后环境的还原[tearDown]。单元测试[unit test]的本质也就在这里,一个测试用例是一个完整的测试单元,通过运行这个测试单元,可以对某一个问题进行验证。
  • 多个测试用例集合在一起就是TestSuite,而且TestSuite也可以嵌套TestSuite。
  • TestLoader是用来加载TestCase到TestSuite中的,其中有几个loadTestsFrom__()方法,就是从各个地方寻找TestCase,创建它们的实例,然后add到TestSuite中,再返回一个TestSuite实例。
  • TextTestRunner是来执行测试用例的,其中的run(test)会执行TestSuite/TestCase中的run(result)方法。
  • 测试的结果会保存到TextTestResult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信息。

6.执行测试用例的方法
解析:
[1]setUp()
在每个测试方法之前执行,这个方法引发的异常会被认为是错误,而非测试失败,默认实现是不做任何事。
[2]tearDown()
在每个测试方法之后执行,即使测试方法抛出异常tearDown()方法仍会执行,并且只有setUp()成功执行时tearDown()才会执行,同样这个方法引发的异常会被认为是错误,而非测试失败。默认实现是不做任何事。
[3]setUpClass()
在一个测试类的所有测试方法执行之前执行,相当于google test中的SetUpTestCase()方法,setUpClass()必须被装饰成一个classmethod()。

@classmethod
def setUpClass(cls):
    ...

[4]tearDownClass()
在一个测试类的所有测试方法执行之后执行,tearDownClass()必须被装饰成一个classmethod()。

@classmethod
def tearDownClass(cls):
    ...

7.单元测试用例
解析:

import unittest

# 继承unittest.TestCase
class MyTest(unittest.TestCase):
    def tearDown(self):
        print('每个测试用例执行之后做操作')
    def setUp(self):
        print('每个测试用例执行之前做操作')
    @classmethod
    def tearDownClass(self):
        print('必须使用@classmethod装饰器,所有test运行完后运行一次')
    @classmethod
    def setUpClass(self):
        print('必须使用@classmethod装饰器,所有test运行前运行一次')
    def test_a_run(self):
        # 测试用例
        self.assertEqual(1, 1)
    def test_b_run(self):
        # 测试用例
        self.assertEqual(2, 4)
if __name__ == '__main__':
    # 运行所有的测试用例
    unittest.main()

8.Flask Restful API单元测试
解析:

import unittest
import json
from app import app

class BasicTestCase(unittest.TestCase):
    def setUp(self):
        self.client = app.test_client()
        self.client.testing = True
    def tearDown(self):
        pass
    def test_logs_api(self):
        book = {
            "name": "Big Data Analysis",
            "price": 58.5,
            "category": "BigData"
        }
        uri = "/books"
        result = self.client.post(uri, data=json.dumps(book), content_type='application/json')
        self.assertEqual(result.status_code, 200)

if __name__ == '__main__':
    unittest.main()

参考文献:
[1]Flask Restful API单元测试:https://blog.csdn.net/SystemEngineeringLab/article/details/80014690
[2]newpanjing/simpleui:https://github.com/newpanjing/simpleui

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NLP工程化

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值