Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
django unittest将使用;“真正的”;数据库_Django_Django Views_Django Unittest - Fatal编程技术网

django unittest将使用;“真正的”;数据库

django unittest将使用;“真正的”;数据库,django,django-views,django-unittest,Django,Django Views,Django Unittest,我目前正在为视图编写测试用例,它最终也会使用数据库。 默认情况下,将在运行测试后创建并删除测试数据库 由于数据库本身是开发数据库,我不希望我的测试创建一个单独的数据库,而只使用数据库。 我还要提醒您,在我的环境中,数据库是创建和提供的,django不能运行迁移或创建数据库 如何创建使用真实数据库的unittest?我认为这个问题的主要原因是django数据库用户没有创建/删除数据库的权限 Django需要创建并删除一个测试数据库以进行单元测试。它不能为此目的使用现有数据库。我们不允许在单元测试中

我目前正在为视图编写测试用例,它最终也会使用数据库。 默认情况下,将在运行测试后创建并删除测试数据库

由于数据库本身是开发数据库,我不希望我的测试创建一个单独的数据库,而只使用数据库。 我还要提醒您,在我的环境中,数据库是创建和提供的,django不能运行迁移或创建数据库


如何创建使用真实数据库的unittest?

我认为这个问题的主要原因是django数据库用户没有创建/删除数据库的权限

Django需要创建并删除一个测试数据库以进行单元测试。它不能为此目的使用现有数据库。我们不允许在单元测试中使用现有数据库的原因是,具有相同数据库权限的任何人都可以修改数据,而django可能无法控制它们所做的更新,这可能导致单元测试失败

这一点在本文中有明确的解释

如果DB管理员可以为Django用户提供测试模块按预期工作所需的访问权限,则可以使用这些装置。fixture类似于数据文件,可以从开发环境中创建,然后可以在单元测试设置中使用,将fixture中的数据导入到由Django创建的测试数据库中

任何单元测试框架的最终目的都是使用不太可能更改的数据测试后端代码逻辑的功能。正如在上面的链接中提到的,功能测试和回归测试覆盖了真实的数据库

欲了解更多有关设备的详细信息,请访问