代码之家  ›  专栏  ›  技术社区  ›  Andrew

如何包装PHPUnit来控制命令行报告?

  •  1
  • Andrew  · 技术社区  · 14 年前

    ..E..F..E.FF...
    

    然后我必须等到所有的测试都运行完之后,它才会告诉我错误和失败的地方。我希望能够控制这一点,这样我可以做一些更有用的报告。例如:

    testLogin ....... passed
    testFoobar ...... failed
        - Failed asserting that foo = true on line 123
    testBazbat ...... passed
    

    如何控制PHPUnit如何显示结果?

    3 回复  |  直到 14 年前
        1
  •  5
  •   Anti Veeranna    14 年前

    PHPUnit有几个命令行参数来控制输出格式。对您来说最有用的是--testdox和--tap

    它们的工作方式如下:

    ]> phpunit --tap FooTest.php 
    TAP version 13
    not ok 1 - Failure: FooTest::test_add
      ---
      message: fark
      severity: fail
      ...
    ok 2 - FooTest::test_exists
    ok 3 - FooTest::test_show_html
    ok 4 - FooTest::test_show_array
    ok 5 - FooTest::test_show_empty
    ok 6 - FooTest::test_find
    1..6
    
    
    ]> phpunit --testdox FooTest.php 
    PHPUnit 3.5.0 by Sebastian Bergmann.
    
    Foo
     [ ] test add
     [x] test exists
     [x] test show html
     [x] test show array
     [x] test show empty
     [x] test find
    

    如您所见——testdox没有显示失败的原因,它被用作一种规范生成器。但是——踢踏声很近。

    这样的代码使用xml配置文件连接到phpunit。

    这里可以看到这样一个自定义侦听器的好例子: http://raphaelstolt.blogspot.com/2010/06/growling-phpunits-test-status.html

        3
  •  0
  •   cweiske agentofuser    13 年前

    如果你想要漂亮的HTML报告页面,尝试使用 phing phpunitreport my blog entry . 对于较大的测试套件非常有用。