web-dev-qa-db-ja.com

simpletestを使用しない機能テスト

私は最近Drupal約50%完成した作業中のプロジェクトに参加しました。機能テストはプロジェクトの一部ではありませんでした。このサイトには約8つのカスタムモジュールがあり、どこでも使用されません。しかし、このクライアントを使用しました。D7にテストモジュールを実装しようとしましたが、モジュールをクリーンにインストールできるようにモジュールを作成していませんでした。インストールできるようにしようとしましたが、十分な時間を割くことができないと思います。

したがって、以前に構築した部分を修正する必要なく、構築している新しい機能をテストできるソリューションが必要です。

私はSeleniumを見ましたが、私の知る限り、スクリプトを記録する前に機能を構築する必要があります。テスト駆動開発スタイルを使用したいと思います。私もBehatを見ていましたが、正直、わかりません。

この質問は、「お気に入りの機能テストフレームワークは何ですか?」よりも具体的です。より具体的には、「Drupalで機能する機能テストフレームワークであり、現在開発中のサイトで機能しますか?」.

2
zkent

最終的にBehat( http://docs.behat.org/en/latest/ )とMink for Behat( http://mink.behat.org/en/ latest / )私のウェブサイトでブラウザを使用してユーザーをエミュレートするテストを書くために。

しかし、Drupalノード、ユーザー、ロールにすばやくアクセスするための統合が必要でした。このプロジェクトを見つけました( https://www.drupal.org/project/drupalextension )これはBehat、Mink、およびDrupal APIを組み込んでいます。これにより、次のようなテストを記述できます。

@api
Scenario: Logged out user can access the custom Landowner registration page
    Given I am not logged in
        And I am on the homepage
    When I click "Register here"
        And I am on "/register"
        And I click "Register as a Landowner"
        And I am on "/register/landowner"
    Then I should see "Landowner Registration"

これで、Simpletestに関連する問題なしにDrupalサイトをテストできます。

2
zkent