3

私は、LAMP、PHP5、MySQL、およびXdebugを使用したNetBeansを使用したWeb開発に慣れています。

今度は、(A)適切なテストと(B)フレームワークの使用方法を学ぶことで、開発を改善したいと思います。そこで、Firefox用にCodeIgniter、SimpleTest、および簡単なXdebugアドインをセットアップしました。maroonbytesが明確な指示とダウンロードの準備ができた構成済みのセットアップを提供してくれたので、これはとても楽しいです。私は巨人の肩の上に立っており、とても感謝しています。

過去にSimpleTestを少し使用しました。これが私が書いたようなものです:

<?php
require_once('../simpletest/unit_tester.php');
require_once('../simpletest/reporter.php');

class TestOfMysqlTransaction extends UnitTestCase {
  function testDB_ViewTable() {
    $this->assertEqual(1,1);   // a pseudo-test
  }
}
$test = new TestOfMysqlTransaction();
$test->run(new HtmlReporter())
?>

だから私はテストがどのように見えるかを知っているといいのですが。私が理解できないのは、新しいセットアップのどこでどのようにテストを行うかです。maroonbytesパッケージにサンプルテストはありません。これまでのところ、Googleは、単体テストがすでに機能的に利用可能であると想定する投稿に私を導きました。私は何をしますか?

4

2 に答える 2

2
于 2010-05-17T05:20:51.087 に答える
1

まず、テストに適切な名前を付ける必要があります。ファイルwelcome.phpに配置されたコントローラーwelcomeをテストするには、welcome_controller_test.phpという名前のテストを、tests /controllers/の下に保存します。詳細については、この投稿を参照してください。

次に、XdebugのGET引数がテストルーチンに干渉します。すぐ上の投稿、この投稿も参照してください。

第三に、私が投稿したスタブテストでは、2つの4行を削除する必要がありました。

//require_once('../simpletest/unit_tester.php');
//require_once('../simpletest/reporter.php');
...
//$test = new TestOfMysqlTransaction();
//$test->run(new HtmlReporter())

今はかなり楽しくテストをしています。CodeIgniterを使用すると、テストを簡単に作成/保守できるため、TDDの目標は達成可能に見えます。私の以前のTDDでの試みは私にアイデアを与えましたが、スクラッチPHPは私が効果を発揮するにはあまりにも不毛でした(そしてVBAについては説明しません!)。

于 2010-08-03T17:33:02.720 に答える