• Odoo安装教程8-创建新的插件模块第七讲


    添加自动化测试

    编程的最佳实践包含代码的自动化测试,对于像 Python 这样的动态语言尤为重要,因为它没有编译这一步,只有在解释器实际运行代码时才会报语法错误。好的编辑器可以让我们提前发现问题,但无法像自动化测试这样帮助我们确定代码如预期般运行。
    “ 注意: Odoo 12 的修改
    在老版本中, Odoo 使用 YAML 文件来进行测试,但 Odoo 12 中移除了对 YAML 文件的支持,所以不能再使用该格式文件。 ”
    测试驱动开发(TDD -Test-driven Development) 方法让我们先写测试,检查错误,然后开发代码直至通过测试。受此方法启示,在添加实际功能前我们先添加模块测试:
    1、 测试代码文件名应以 test_开头,并通过 tests/__init__.py 引用。但测试目录(也即 Python
    子模块)不应在模块的外层__init__.py 中引入,因为仅在测试执行时才会自动查找和加载
    它。
    2、 测试应放在 tests/子目录中,在 tests/__init__.py 中添加如下代码:

    from . import test_book

    3、 在 tests/test_book.py 文件中添加实际的测试代码:

    from odoo.tests.common import TransactionCase
    class TestBook(TransactionCase):
    def setUp(self, *args, **kwargs):
    result = super().setUp(*args, **kwargs)
    self.Book = self.env['library.book']
    self.book_ode = self.Book.create({
    'name': 'Odoo Development Essentials',
    'isbn': '879-1-78439-279-6'})
    return result
    def test_create(self):
    "Test Books are active by default"
    self.assertEqual(self.book_ode.active, True)

    以上代码添加一个简单测试用例,创建一本新书并检测 active 字段的值是否正确。
    4、 使用–test-enable 参数在安装或升级模块时进行测试
    ~/odoo-dev/odoo/odoo-bin -d dev12 -u library_app --test-enable
    5、 Odoo 服务会在升级的模块中查找 tests/子目录并运行。现在测试会抛出错误,在输出日志中可看到测试相关的 ERROR 信息。在为模块添加完图书模型后应该就不再报错。

    更多教程:https://www.erpdaxue.cn/odoo/

  • 相关阅读:
    kubernetes Yaml 基本语法
    kubernetes kubesphere 原生安装
    kubernetes 安装
    kubernetes 基础概念
    kubesphere 应用部署概念
    kubesphere 多租户
    centos 安装 docker
    MySQL索引相关知识总结
    论文解读(GSAT)《Interpretable and Generalizable Graph Learning via Stochastic Attention Mechanism》
    论文解读(softmask GNN)《Softmask: Adaptive Substructure Extractions for Graph Neural Networks》
  • 原文地址:https://www.cnblogs.com/odoo14/p/12867898.html
Copyright © 2020-2023  润新知