denetmen bundle (manage your routes like a boss!)
Post on 27-Aug-2014
330 Views
Preview:
DESCRIPTION
TRANSCRIPT
A new testing tool for Symfony2
DENETMENBUNDLE
Manage your routes
like a bossA command line applicationSpecial for Symfony2Uses GuzzleMIT Licensed
WHY?
If you are not available to use TDD or BDD; Denetmen will make your job easier. So What Does Denetmen Do?
➔ Informs you when your pages return error➔ Makes you sure about page response times➔ Makes you sure about page response types➔ Makes you sure about page response content
First commit
Tue Feb 25 12:24:56 2014
Denetmen can,
➔ Test your "get" requests,➔ Mock your requests➔ Validate response type, content, time➔ Send you an e-mail on any error (optional)
Features
INSTALLATION
1. add denetmen-bundle to your composer.json file 2. update composer
~$ composer update
3. Register the bundle
// app/AppKernel.php
public function registerBundles(){ $bundles = array( new \Hezarfen\DenetmenBundle\HezarfenDenetmenBundle() );}
{ "require": { "mstfleri/denetmen-bundle": "dev-master" }}
4. create your config
#app/config/config.ymlimports: - { resource: denetmen.yml } ...
parameters: denetmen: base_url: "http://joker.dev/" excluded: - "joker_cart_apply_voucher" - "joker_mail_homepage" router_configs: general: name: "Mustafa"
joker_payment_check_bin_number: parameters: cardNumber: 1122334455667788
joker_user_ajax_get_address: parameters: id: 1
joker_brand_page: parameters: sefUrl: "action-man-906"
joker_product_homepage: parameters: product: "Deneme-1"
joker_root_category_homepage: parameters: categoryName: "bebek-arabalari"
joker_catalog_homepage: parameters: catalogHash: "Test-1" response: type: "text/html; charset=UTF-8" filter: node_traversing: - ['body > header > div > nav > ul > li', 'Yardım'] - ['body > header > div.top > nav > ul:nth-child(1) > li:nth-child(2) > a', 'Hediye Listem Nedir?'] max_response_time: 0.5
joker_solr_suggestion: response: type: "application/json"
Sample config fileExcluded routes
Mock all “name“ parameters as “Mustafa” for all routes
Mock all “cardNumber“ parameter as “1122334455667788” for joker_payment_check_bin_number
Response type validator
Response Content Validator
Response Time Validator
Response Validators
How to run?$app/console denetmen:run:url-test
You can flter your routes by regex.
$app/console denetmen:run:url-test --pattern='#^get_(.*)$#i'
You can activate email notifcation when one of your routes has any error.
$app/console denetmen:run:url-test --alert-email='youremail@yourdomain.com'
Sample output of denetmen
Statistics AND contributors
37 58 3
Contributors of DEnetmen
Osman ÜngürPascal borellı
https://github.com/mustafaileri/DenetmenBundle
top related