Php Magento-单元测试

Php Magento-单元测试,php,unit-testing,magento,Php,Unit Testing,Magento,我最近在Magento网站上遇到了一些问题,我正在寻找一种方法来检查Magento网站在任何给定点的完整性 单元测试作为实现这一点的一种方法脱颖而出,但我认为编写大量测试来检查站点中的所有内容是否正常工作将是一项非常艰巨的工作 参与单元测试和magento的任何人能否就以下方面提供建议: 是否可以测试整个站点,而不仅仅是定制模块- 所以一些测试的例子会令人惊讶 鉴于该网站与数据库有着紧密的链接,它将如何访问 能够在不干扰数据库的情况下对现场进行全面测试 有没有更好的方法可以自动检查一个文件的完整

我最近在Magento网站上遇到了一些问题,我正在寻找一种方法来检查Magento网站在任何给定点的完整性

单元测试作为实现这一点的一种方法脱颖而出,但我认为编写大量测试来检查站点中的所有内容是否正常工作将是一项非常艰巨的工作

参与单元测试和magento的任何人能否就以下方面提供建议:

  • 是否可以测试整个站点,而不仅仅是定制模块- 所以一些测试的例子会令人惊讶
  • 鉴于该网站与数据库有着紧密的链接,它将如何访问 能够在不干扰数据库的情况下对现场进行全面测试
  • 有没有更好的方法可以自动检查一个文件的完整性 马根托遗址

  • 当我说完整性时,我的意思是网站上没有任何错误——运输、付款等都正常工作。

    这是一项艰巨的任务,但是Magento社区的一些成员已经解决了这一问题

    该模块为单元测试Magento提供了一个框架,但不包含任何实际测试。它可以(并且已经)用于测试您自己开发的核心功能或模块

    EcomDev模块的一个关键优势是它确实提供了100%的数据库隔离。它创建数据库结构的精确副本,然后使用fixture(参见的第6页)将数据插入这些表中,以创建测试先决条件。这是一个强大的最佳实践,但确实需要相当多的设置

    您可以尝试使用phpMyAdmin将数据导出到YAML中,以便创建装置

    另一种方法是为浏览器UI创建并自动化一个全面的Selenium测试套件。事实上,最好的解决方案是准备单元测试和UI测试,因为有些领域只能在一个功能域中进行测试。Magento的Javascript(例如所有validation.js)中内置了大量业务逻辑,PHPUnit无法轻松测试,Selenium是您最好的选择

    已经有关于创建单元测试存储库以涵盖核心功能的讨论,但是请记住,Magento 2.0(计划于2012年推出)。

    “Magento 2.0(计划于2012年推出)”