今天是个好日子,

在过去的几天里,我一直在研究测试驱动开发,并决定我也需要学习它.虽然我无法弄清楚如何准确地做到这一点.

我的项目依赖于Symfony2.1.6框架和Doctrine,所以我有一些需要填充的数据库表.

Book (1,n) – (0,n) Genre

现在,如果我想插入一个类型记录,我首先需要编写一个测试来确保所有内容都被插入(或者我错了吗?)

现在的问题是我不知道如何访问我的数据库,因为它是由框架管理的.

我唯一能找到的是LiipFunctionalTestBundle

https://github.com/liip/LiipFunctionalTestBundle每次运行测试时都会创建并恢复临时数据库.我按照说明设置了所有内容.

编辑:我的app / config / config_test.yml现在看起来像这样:

imports:

- { resource: config_dev.yml }

framework:

test: ~

session:

storage_id: session.storage.filesystem

liip_functional_test: ~

web_profiler:

toolbar: false

intercept_redirects: false

swiftmailer:

disable_delivery: true

liip_functional_test:

cache_sqlite_db: true

doctrine:

dbal:

default_connection: default

connections:

default:

driver: pdo_sqlite

path: %kernel.cache_dir%/test.db

所以现在我有一个GenreTest类:

Liip没有文档,所以我尝试了这样的方法.

use Liip\FunctionalTestBundle\Test\WebTestCase;

class GenreTest extends WebTestCase {

public function testInsert() {

$container = $this->getContainer();

$registry = $container->get('doctrine');

$em = $registry->getEntityManager(null);

$genre = new Genre();

$genre->setName("testGenre");

$em->persist($genre);

$em->flush();

$result = $em->createQuery("SELECT g FROM QkprodMangressBundle:Genre g ".

"WHERE g.name = :name")

->setParameter("name", $genre->getName())

->getResult();

$this->assertEqual($result[0]->getName(), $genre->getName());

}

}

phpunit -c web /

PDOException: could not find driver

/…/Mangress/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:36

/…/Mangress/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOSqlite/Driver.php

:60

/…/Mangress/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:350

/…/Mangress/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:949

/…/Mangress/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php:306

/…/Mangress/vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php:355

/…/Mangress/app/cache/test/jms_diextra/doctrine/EntityManager_510128d0a5878.ph

p:362

/…/Mangress/src/Qkprod/MangressBundle/Tests/Entity/GenreTest.php:27

FAILURES! Tests: 3, Assertions: 1, Errors: 1.

我遇到的一个大问题是……如何测试类似的东西?

或者我甚至测试数据库通信?伪造数据库

通过自定义实现的通信似乎不是一个

对我来说是个好主意,因为它会在制作中使用ORM和Doctrine

环境也是如此.

对不起..原来是这里的小说.

php测试插入,php – 使用Symfony测试数据库插入相关推荐

  1. mysql数据库怎么插入时间_给mysql数据库插入当前时间

    mysql相关的三个函数有: NOW()函数以`'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中. CURDATE()以'YYYY-MM-DD'的格式返 ...

  2. mysql数据库插入图片_向MySql数据库插入与读取图片文件

    1.插入图片 import java.io.FileInputStream; import java.io.InputStream; import java.sql.Connection; impor ...

  3. java如何向mysql插入_java中怎么向数据库插入数据 ?

    展开全部 Java程序向数据库中插入数据,代码如下://首先创建数据库,(access,oracle,mysql,sqlsever)其中之一,32313133353236313431303231363 ...

  4. php向数据库 插入图片,php-向/从MySQL数据库插入/查看图像

    我在DB中插入图像时遇到问题. 该表具有以下结构: > id-> INT(3)->自动增量 >名称-> VARCHAR(30) > extension-> V ...

  5. java 插入中文乱码_Java向数据库插入中文出现乱码解决方案

    主要解决方向,JAVA与MYSQL中编码要统一.通常采用UTF-8. 这里虽然你在项目中设置了数据库采用UTF-8,但是那里不包括连接方式之类的. 1.查询自身MYSQL编码方式 MySQL默认编码是 ...

  6. 数据库测试的重要性——永远不要忘记数据库测试

    高翌翔 译 原文链接:The Importance of Database Testing 译者导读: 本文分为三部分,第一部分是第1节,即说明"对数据库测试的根本误解":第二部分 ...

  7. 阿里云开放国内首个云端数据库测试平台,云已成为数据库新标准;华为5G随行WiFi发布;科大讯飞推出 AI 专用语音芯片系列……...

    戳蓝字"CSDN云计算"关注我们哦! 嗨,大家好,重磅君带来的[云重磅]特别栏目,如期而至,每周五第一时间为大家带来重磅新闻.把握技术风向标,了解行业应用与实践,就交给我重磅君吧! ...

  8. 【测试工具】在linux测试环境访问禅道数据库

    上一篇文章我们介绍了如何在linux测试环境安装bug管理工具禅道,现在我们来介绍一下如何访问禅道的数据库,访问数据库有什么用呢?首先,我们可以更改我们安装后的管理系统的名称(改为自己公司名称),此外 ...

  9. 超多趣味测评测试微信小程序源码 可插入流量主广告位 无后台

    简介: 趣味测试小程序源码,本程序无后台,可插入流量主广告位,实现躺赚模式,内置超多趣味测评,界面美观,大多数客户会自行分享测试结果或者邀请朋友测试,无需就可以获得超多流量. 在小程序内植入腾讯的广告 ...

最新文章

  1. python cvxpy包安装教程
  2. Tomcat发布Maven项目遇到异常:java.lang.OutOfMemoryError: PermGen space
  3. _LVM——让Linux磁盘空间的弹性管理
  4. 随机化算法-----模拟退火
  5. python使用print语句时显示特殊字符
  6. 开关电源中的磁性元件书籍_总结丨PFC开关电源的效率优化措施
  7. JavaScript 工作原理之二-如何在 V8 引擎中书写最优代码的 5 条小技巧(译)
  8. PHP 中检查是否关联数组(多维数组)的方法 (UPDATE!)
  9. 网络中看不见的五大重要安全隐患
  10. 计算机毕业设计java+jsp幼儿园信息网站(源码+系统+mysql数据库+Lw文档)
  11. 利用文本挖掘技术来找出《天龙八部》中的“小鲜词”
  12. win10打开谷歌浏览器chrome,并进入kiosk模式
  13. TestFlight简易流程
  14. 网站关键词排名,如何快速提升?
  15. Context上下文穿插方式,不是设计模式,但胜于设计模式。
  16. 数独(日语:数独/すうどく sūdoku)
  17. 未来计算机发展四大趋势,仪器仪表
  18. Ad Click Prediction: a View from the Trenches 阅读
  19. 2019年苏州华为研究所面经
  20. 正则表达式?来直接告诉你怎么写

热门文章

  1. echart的进阶使用(option)
  2. java正确的代码_对文件名为Test.java的java代码描述正确的是()
  3. java长连接转短连接_java原生程序redis连接(连接池/长连接和短连接)选择问题...
  4. 数字能查出笔迹吗_大家都知道文字可以做笔迹鉴定,我想问一下专家阿拉伯数字是否也可以做笔迹鉴定正确率高吗?...
  5. Ubuntu apt-get 卸载命令
  6. qt 添加依赖库lib_在QT中添加LIB的方法
  7. Sharepoin学习笔记—架构系列--05 Sharepoint的四种执行模型 2
  8. 结合vue、react、angular谈谈MVC、MVP、MVVM框架
  9. 天猫方糖 篇一:新版天猫放糖改造立体声
  10. 一步步编写操作系统 20 x86虚拟bochs一般用法 上