beberlei/acme-pizza

此软件包最新版本(v1.0.3)没有提供许可证信息。

安装: 354

依赖项: 0

建议者: 0

安全: 0

星标: 131

关注者: 6

分支: 27

开放问题: 4

类型:symfony-bundle

v1.0.3 2012-01-23 09:36 UTC

This package is auto-updated.

Last update: 2024-09-12 04:00:24 UTC


README

这是一个用于实验性表单支持的测试-bundle。

它目前处于早期状态,周末将作为一个演示示例完成。

分发:最佳搭配 Symfony 标准版 使用

需求

Symfony (https://github.com/symfony/symfony) 显然。

安装

添加所需束的依赖项

[AcmePizzaBundle]
    git=https://github.com/beberlei/AcmePizzaBundle.git
    target=/bundles/Acme/PizzaBundle

[doctrine-fixtures]
    git=http://github.com/doctrine/data-fixtures.git

[DoctrineFixturesBundle]
    git=http://github.com/symfony/DoctrineFixturesBundle.git
    target=/bundles/Symfony/Bundle/DoctrineFixturesBundle

接下来,运行供应商脚本以下载束

$ php bin/vendors install

添加到 autoload.php

$loader->registerNamespaces(array(
    'Acme'             => __DIR__.'/../vendor/bundles',
    // ...

在 Kernel 中注册 AcmePizzaBundle

<?php

    # app/AppKernel.php
    //...
    $bundles = array(
        //...
        new Acme\PizzaBundle\AcmePizzaBundle(),
    );
    //...

创建数据库和模式

$ php app/console doctrine:database:create
$ php app/console doctrine:schema:create

启用路由配置

# app/config/routing.yml
AcmePizzaBundle:
    resource: "@AcmePizzaBundle/Controller/"
    type:     annotation
    prefix:   /acme-pizza

刷新资产文件夹

$ php app/console assets:install web/

数据固定(可选)

首先,请确保在 app/config/parameters.ini 中正确设置了您的数据库参数。您需要安装 Doctrine 数据固定(不要忘记将路径添加到 AppKernel.php),然后运行

$ php app/console doctrine:fixtures:load

您可以在 Symfony2 烹饪书(https://symfony.ac.cn/doc/2.0/cookbook/doctrine/doctrine_fixtures.html#setup-and-configuration)中阅读有关安装说明

用法

访问 app_dev.php/acme-pizza/pizza/list 并开始销售披萨。

测试

您可以通过以下步骤启动功能测试,同时 Selenium RC 服务器正在运行

  • 下载 selenium 服务器
  • 编辑 app/phpunit.xml.dist
    • 添加 php 的服务器变量以匹配您的配置
    • 添加 selenium 的浏览器配置。我添加了 Google Chrome Portable,因为它比 ie 或甚至 firefox 更快。

app/phpunit.xml.dist

# app/phpunit.xml.dist
<!-- ... -->
<php>
    <server
        name  = "KERNEL_DIR"
        value = "/var/www/AcmePizza/app/" />
    <server
        name  = "HTTP_HOST"
        value = "localhost" />
    <server
        name  = "SCRIPT_NAME"
        value = "/AcmePizza/web/app_dev.php" />
</php>
<!-- ... -->

<!-- ... -->
<selenium>
    <browser
        name    = "Google Chrome Portable"
        browser = "*custom c:\bin\GoogleChromePortable\GoogleChromePortable.exe -disable-popup-blocking -proxy-server=127.0.0.1:4444"
        host    = "127.0.0.1" /> <!-- ip of selenium RC server -->
</selenium>
<!-- ... -->

现在您可以使用 phpunit -c app/ src/Acme/PizzaBundle/Tests/ 运行测试(假设 Selenium RC 正在运行 java -jar selenium-server-standalone-2.2.0.jar)。如果您愿意,可以提交其他缺失的测试。